ActivityPub support

Today we launched ActivityPub support! This is an early, experimental feature that enables your blog to spread throughout the fediverse. This thread is going to be updated over time to show the current status of our implementation and gather any bug reports you report.

So far, everything listed below has been tested to work with Mastodon. If anyone is interested in helping us test with other platforms, please let me know.

What works

  • Finding Write.as blogs by name from within Mastodon, e.g. @blog@write.as for write.as/blog/ or blog.writeas.com
  • Finding Write.as blogs on custom domains (e.g. @snapas-blog@we.snap.as)
  • Following Write.as blogs
  • Getting blog posts in your home stream / on your instance’s federated timeline
  • Favoriting posts (nothing happens on our end – we consider it a private bookmark)
  • Boosting posts
  • Updating articles in the fediverse when they’re updated on Write.as (the Update event is sent out; but right now actually changing the post is unsupported by Mastodon)

Undefined / under-tested behavior

  • Changing blog URL / Write.as username

What’s still missing

  • Replying to posts (to eventually be supported with the launch of Remark.as)
  • Retrying article delivery when it fails

Potential future features (let us know what you’d like to see)

  • Custom avatars
  • Pinned / Static pages on Write.as become pinned collections on Mastodon
  • Unlisted privacy in the fediverse (i.e. posts aren’t shown on public timelines)

Starting today, we’re slowly rolling this feature out to everyone. If you’re a Casual or Pro user, you can set your blog to Public now (if you haven’t already) and it will be discoverable in the fediverse. Today this feature is available to everyone, for free, forever. If your blog is Public, federation is already enabled. If you’d like to join the fediverse, you can sign up here, or as an existing user, go into your blog settings and click Enable federation. Federation is opt-in because we know not everyone will want this feature, especially if they want more privacy.

Background

We’ve run a Mastodon instance, Writing Exchange, over the past year, and it’s been really exciting seeing our instance and the entire fediverse grow. I thought Write.as would be a perfect fit for the fediverse since it’s a stable, mature blogging platform, and ActivityPub support would be a largely invisible addition.

But to add support, I had to make sure it fits in with the overall design goals of the product, i.e. privacy by default, intuitiveness, and simplicity. As such, the goal is not to make a federated clone of Medium. I’ve kept comments, likes, shares, claps, etc. off of the platform for a good reason – I want you to be able to write in unadulterated peace. I want everyone to have respite from the never-ending deluge of web-based commentary by default (as many have picked up on). You can read more about my thoughts behind our implementation on my blog.

Still, I haven’t thought of it all, and I don’t know about every single development in the fediverse. Part of my objective in adding AP support is getting a solid blogging platform implementation out there so we can all see what it looks like, and figure out what works best. So besides any potential bug reports, please let me know your ideas and feedback here.

P.S. I know it’s odd we’re joining the fediverse while our code isn’t completely free / open source. Open sourcing everything is going to be a major diversion from the product roadmap we’re following to get to sustainability / profitability, but it’s in the cards – ideally late this year or early next year. You can find out a bit more about our plans on GitHub.

3 Likes

Important links:

Create a federated blog

See the demo

Question re: Support ActivityPub mentions: when writing a post, will we be able do this both by straight @user@domain.tld and also by creating our own link text a la

[this user wrote](@user@domain.tld)

if we want to format it that way?

1 Like

That’s a really interesting idea I hadn’t thought of. I’d like to support that if it doesn’t cause too many issues, absolutely. So I’ve made a note on that task to look into it.

2 Likes