link: published: 2025-08-01 author:
- Boris Mann tags:
- presentation
- ATProtocol
- Fedicon title: "Beyond Microblogging: AT Protocol for Building Unique Social Apps"
I gave this presentation at [[Fedicon]] 2025 in Vancouver.
My goal was not to do a protocol deep dive, but rather showcase all of the beyond microblogging applications that developers are building in the [[ATProtocol]] ecosystem, aka the [[ATmosphere]].
Along the way we detoured into some explanations of pieces of how ATProto works.
The bottom line is joy: making apps should be fun, they should bring joy to users -- including the confidence that the data is in their own account -- and we should have a large variety of apps, from small, silly to big, serious. And beyond microblogging is where all the good stuff is.
Slide 5: Let's have fun in the ATmosphere.#
- My goal with this talk is to tell you about the ATmosphere — the connected accounts, data, and apps that are all running on the AT Protocol
- One of the things that lets people play is that every account has portable, user owned storage included in a Personal Data Server ([[PDS]])
- With accounts separate from apps, people can make apps just for themselves or small groups of people and the barrier to entry is very low.
- There isn’t a server or an app to go away: data is written to a users’ account
Resources#
Microblogging#
I started by listing clients/apps that use the [[Bluesky]] microblog lexicon
- Ouranos - a client that supports rich-text links and out-of-band tags
- Flashes - an iOS, iPad, and soon Android app that is an Instagram looking interface focused on images and videos
- Skylight - an iOS "TikTok clone" video app
- Pinksky - a cross-platform web, Android, and iOS app that is Instagram looking
- [[Gander]] - a fork of the Bluesky React Native client codebase that will initially launch as mobile only, be more Instagram shaped, and add other Canadian specific defaults and features over time (I'm an advisor)
Beyond Microblogging#
Moved on to the "real" beyond microblogging apps here:
- Flushes - an app to post your toilet status
- Recipe Exchange - an app to post recipes too, including images. Based on the Schema.org Recipe Type
- Tangled - a social coding app / Github clone. Has its own follow graph, so you login with your ATProto account but don't re-use the Bluesky following graph
- [[Smoke Signal]] - events & RSVPs, also includes the [[Lexicon Community]] community lexicon for venues / geo locations. Aiming to be event infrastructure where different products will be built on top. Regional "instances" are in progress of self hosting.
- Grain - photo posting that you can gather into galleries. Uses the regular "blob" type that all images and other non-text file types on ATProto are stored as, content addressed.
- Streamplace - decentralized video streaming platform aiming to be a Twitch alternative. Going to be plugged into other video apps over time.
- [[WhiteWind]] - the first custom Lexicon, made by a Japanese developer. Long form post type using Markdown.
- Leaflet - another long form post type that uses a block-based Lexicon and editor, so it's an array of different types. Can make publications that automatically post to a custom feed that users can subscribe to.
- [[Roomy]] - a chat platform that uses ATProto logins but is also tied to local first p2p tech like [[Automerge]], [[Jazz]], [[Keyhive]]
- 2048 Blue - 2048 game written in Rust, scores are stored in your account
- Discover Toronto Inc - custom Lexicon to power a directory of Toronto-linked people. An example of a single serving app that uses ATproto as a backend-as-a-service
For others wanting to experiment with building apps, the [[Statusphere]] example app is a good starting point.
And, join the [[ATProto Touchers Discord]], the community-run developer Discord.
Questions#
A couple of notes on questions afterwards that I remember:
Evan asked about how hard or easy it is for developers to make apps, or if there were things that developers needed to learn.
"Monkey-punching toilets is actually a sign of success." @boris@cosocial.ca #fedicon
— Evan Prodromou (@evan@cosocial.ca) August 1, 2025 at 2:45 PM
I explained1 that there were libraries and SDKs for many programming languages, and that the new version of OAuth used by ATProto was tricky. The main challenge is understanding the network as a distributed system -- "your" Lexicon type can be posted by anyone on the network, not just your app, or the users that sign up with you.
Johanna had a question about how accounts and storage and apps interrelate.
My simplest example conceptually is that an ATProto account functions like an Apple account: you have an identity for logging in, and it has storage included, and apps can store data in your account if you give them permission. As a developer, you know every account has storage attached.
Digging a little deeper into how this actually works, your unique identifier in ATProto is a [[DID]], specifically a [[DID PLC]]2
* [Full screen presentation](/assets/2025/atprotobeyondmicroblogging/) * [PDF](/assets/2025/fedicon-atproto-beyond-microblogging.pdf)-
Evan's talk covered the growth of Facebook apps on the social graph that grew virally and had all sorts of zombie bit monkey punch types of activity. Since I mentioned Flushes app, I was trying to make the point that these sorts of apps being built is what success looks like - you want to make it easy enough to make silly, fun things. ↩︎
-
yes, [[did web]] exists and has use cases, but I'm focusing on the common, widely used case ↩︎