Something went wrong. Try again.
a pds written in elixir tempest.desertthunder.dev
elixir phoenix atproto pds
Something went wrong. Try again.
README.md
title: Tempest AT Protocol PDS Specification Index updated: 2026-06-03 #
Tempest is a Phoenix application that will become a self-hostable AT Protocol Personal Data Server.
Near-term focus: Target Profile - Solo Login + Archive. Hosted-provider scale can come later.
Subsystem specifications live in this directory.
Reading Order #
- Target Profile - Solo Login + Archive
- Architecture
- XRPC HTTP Surface
- SQLite Storage
- Accounts and Auth
- Identity and Handles
- Repository Core
- Record APIs
- Lexicon Schema Loading and Generation
- Blobs
- Sync and Firehose
- Security, OAuth, and Delegated Access
- Migration and Account Lifecycle
- Admin Operations
- Deployment and Observability
- Interop and Integration Testing
- PDS Compatibility Against Reference Surface
- Public Stats Dashboard
- Documentation Viewer
- Account Management Control Panel
- Password Resets and Resend Email Delivery
- Admin XRPC Methods
Source Baseline #
Research was checked on 2026-05-07 against:
- AT Protocol Repository spec: https://atproto.com/specs/repository
- AT Protocol Sync spec: https://atproto.com/specs/sync
- AT Protocol XRPC spec: https://atproto.com/specs/xrpc
- AT Protocol Account spec: https://atproto.com/specs/account
- AT Protocol DID spec: https://atproto.com/specs/did
- AT Protocol Handle spec: https://atproto.com/specs/handle
- AT Protocol Blob spec: https://atproto.com/specs/blob
- Blob lifecycle guide: https://atproto.com/guides/blob-lifecycle
- Official Bluesky PDS distribution: https://github.com/bluesky-social/pds
- AT Protocol Lexicons: https://github.com/bluesky-social/atproto/tree/main/lexicons
- AT Protocol OAuth spec: https://atproto.com/specs/oauth
- AT Protocol OAuth scopes guide: https://atproto.com/guides/scopes
- AT Protocol account migration guide: https://atproto.com/guides/account-migration
- Reference PDS implementation: https://github.com/bluesky-social/atproto/tree/main/packages/pds
- Cocoon PDS: https://github.com/haileyok/cocoon
Documentation Rules #
- Prefer plain technical prose.
- Keep protocol facts separate from project choices.
- Every subsystem spec must include HTTP verification.
- Every completed subsystem must have integration tests before it is considered done.
- Smoke tests must be Hurl files under
test/smoke/*.hurland must run withhurl --test. - Use
Reqfor outbound HTTP in application code. - Run
mix precommitbefore marking implementation work complete.