atjamalpha

What atjam depends on

The shared services under atjam, and what stops working when each one is gone.

atjam has no database: every record lives on its author's PDS. But reading those records back together leans on a handful of shared services. None of them can take your records away — those stay on your PDS — but each one is a place the app can break. This page names them, so you can plan around them, self-host them, or point the read layer somewhere else.

DependencyWhat atjam uses it forWhat breaks when it's gone
plc.directoryResolving a did:plc:… to its PDS and handle.Nearly everything. Without it atjam can't find whose PDS holds a record, so round and jam pages fail to load, handles fall back to raw DIDs, and sign-in can't find your PDS. did:web accounts keep working.
Constellation (backlinks)Finding the records that point at a record: a jam's rounds, a round's signups, submissions and invitations.Rounds show nobody signed up and nothing submitted, and jam pages show no rounds. The records still exist; atjam just can't find them. Signup validation can't walk invitation chains.
Slingshot (record and identity cache)Reading records and identities from an edge cache instead of each author's PDS.Reads fall back to the authors' PDSes: slower, and a PDS that's down takes its records off the page with it.
Public Bluesky AppView and typeahead.waow.techResolving handles, profile names and avatars, and suggesting handles as you type.Sign-in and invite fields lose their suggestions, and people show as handles or DIDs without names or avatars. Typing an exact handle still works wherever the handle resolves another way.
The relay (com.atproto.sync.listReposByCollection)Discovering which accounts hold at.atjam.round records, to build the home feed.The home feed shrinks to the organizers atjam already knows about. Direct links to rounds and jams keep working.
Fly.io (hosting)Running the atjam.at web app.The atjam.at site is down. Every record is still on its author's PDS, readable by any other app or by @atjam/lexicons directly.

The read layer's URLs are configurable — see Configuring the read layer — so an app built on @atjam/lexicons can point at its own Constellation or PLC mirror instead of the public ones.