ATmosphere Report – #116
Resilient relays, a web interface to manage your ATProto account directly on your PDS, and a new upcoming ATProto platform with Speakeasy.
I also run a weekly newsletter, where you get all the articles I published this week directly in your inbox, as well as additional analysis. You can sign up right here, and get the next edition tomorrow!
Relays, Free Our Feeds and IndieSky
Free Our Feeds, the campaign to build independent infrastructure for ATProto, has provided IndieSky with 50k USD funding. IndieSky is a working group that arose from within the ATProto developer community, at the Seattle ATmosphereConf and Hamburg’s Ahoy! conferences.
As phil, an independent ATProto developer who runs three separate relays, points out, there is little value in using an alternative relay. They are commoditised by design, and the important part of relays is that they are it is easy for apps to switch to another relay if the relay that is used by Bluesky PBC becomes unreliable. With relay costs now solidly under 50USD/month (as acknowledged by Free Our Feeds), people speed-running the setup in minutes, and multiple other independent relays that have popped up in recent weeks the relay part of the ATProto network is at this point resilient. Free Our Feeds switching their focus away from relays makes sense in that context.
That does not mean however that all parts of ATProto are as resilient as relays are, nor that other parts will be able to scale down to such low costs as relays can. AppViews and moderation remain costly in a way that scales with the amount of users. Relays have gotten an overly large amount of attention due to various cultural and historical reason. Relays are smartly designed part of the system, and it is impressive that passing through the network traffic of tens of millions of accounts can be done for such little amount of money. But not all parts of the network will scale that way.
Free Our Feeds goes into the question of why they want to raise 30M USD, saying: “We are supporting the development of fully independent infrastructure that enables the development and running of social apps that can serve tens, if not hundreds, of millions of people. […] We think this is a fraction of the money that will be needed to remake the social web from where it is today – with the dominance of Big Tech – to a future where billions of internet users control their online lives. We need many more initiatives – public, non-profit and private to make this happen.”
Taken all the news together, of Free Our Feeds taking a broader approach to support independent infrastructure, a multiple independent public relays being available, and people collaboration on independent infrastructure with the IndieSky working group, makes it feel the network is getting to a new phase in the road towards full independence. Over the last year the conversation around network decentralisation has been overly dominated by relays, more than it fully deserved. Now that the relay part of the network can now be seen as sufficiently resilient, more focus can be put on other, more challenging, parts of the network.
The next meeting of the IndieSky working group will be on May 22nd, 9am PST / 12pm EST / 1800 CEST.
In Other News
Bluesky has updated their PDS reference implementation, and it now has a web interface to manage and create accounts directly on the PDS themselves. ATProto apps that use the OAuth for login did not have a way to get new users to create an account yet. The work-around up until now was to refer people to the Bluesky app to login. This is not a great user experience, and also gives Bluesky PBC an outsized role in the ecosystem. With the latest update, apps can now create accounts directly on a PDS, even a PDS owned by Bluesky PBC if so desired. The web interface (for accounts on a Bluesky PDS, accessible at https://bsky.social/account/), gives people some basic account management options, such as the ability to sign out of specific devices or revoke access of connected apps. For this web interface Bluesky PBC expects more features to be implemented here in the future. These features are related to account management that are not tied to a specific app, such as email updates and password changes. Bluesky PBC is encouraging other PDS implementations to innovate and differentiate with new features as well, speculating that PDS hosting could be bundled with other hosted networking services.
Speakeasy is an upcoming social media platform build on ATProto, and is compatible with Bluesky. An early version of Speakeasy can already be accessed, and it is a fork of the Bluesky web client. Speakeasy is building private posts as a distinguishing feature. Founder Chris Jensen says that private messages are stored outside of the network for now, and that he believes that private posts are an urgent needed feature for the network. Jensen also says that once Bluesky PBC has an official implementation for private data, they will merge their implementation.
Smoke Signal developer Nick Gerakines has created a local developer environment for ATProto. It gives developers the option to run a local PDS and PLC that can resolve DNS handles. Gerakines describes it as a “turnkey dev stack with full ATProtocol flows, HTTPS everywhere, and DNS-backed handle resolution—without needing to expose anything publicly.”
Flashes, a client app for Bluesky that focuses on images, has received funding from Skyseed. The funding will be used to build an Android version, as well as further infrastructure in Europe to make the app more independent from Bluesky PBC. Creator Sebastian Vogelsang says that they have begone designing a mobile PDS.
Two independent ATProto developers are taking a stab at guestbooks: Ms Boba has been livestreaming her development of a guestbook on ATProto that can be embedded on websites. Dame has an approach of creating welcome messages for people who view their PDS on a PDS viewing tool like PDSls or atp.tools.
Software updates
- Event planning app Smoke Signal is now open sourced, and available on Tangled.
- Tangled has added OAuth support.
- Various updates to the Streamplace interface and new documentation.
- ATProto Audio room platform Bluecast now has a public mode for live streams, so that audio streams can be listened to without logging in.
- One of the challenges for ATProto app developers is that users are regularly asked to log back into their client. Graze recently released a tool that helps with this, in collaboration with Smoke Signal developer Nick Gerakines. Skylight is now implementing this tool to prevent this pain point.
- UX and search updates for Spark.
- A short update by Northsky on their current state of development.
Tech Links
- Demesme is an app that is currently in development by Bluesky engineer Samuel Newman to store your account keys on your phone.
- Authr is an ATProto OAuth server that’s currently in development, with a demo available here.
- ATSyntaxTools is “a lightweight Swift library for handling validations for various identifiers within the AT Protocol.”
- A MCP server for ATProto docs.
- A template for deploying a PDS on Railway.
- A web app to search all the posts on Bluesky that you’ve liked.
- Creating a paper key for a PLC rotation key.
Further reading
- Bluesky CTO Paul Frazee held a talk about Bluesky & Open Social Media Tech at the The Berkman Klein Center for Internet & Society, which can be viewed here.
- A three-part article series exploring how ATProto can be combined with local-first software (1, 2, 3)
- Block Party now has support for Bluesky. Block Party became well-known as a tool for Twitter that offers advanced safety tools. With changes to Twitter’s API, Block Party became a “browser extension that helps users update their privacy and security settings and clean up their content across 12+ platforms, including Bluesky.”
- Notes on migrating a Bluesky account.
That’s all for this week, thanks for reading! If you want more analysis, you can subscribe to my newsletter. Every week you get an update with all this week’s articles, as well as extra analysis not published anywhere else. You can subscribe below, and follow this blog @fediversereport.com and my personal account @laurenshof.online on Bluesky.