Off the Clock Docs

Developers

Running Off the Clock

One community needs an identity on a PDS with permissioned spaces, three small services, and three domain names.

What you need

Draft outline
  • A community identity (did:plc) on a PDS that supports permissioned spaces and managing-app policies (today: atproto-crates' PDS, as on vesuvius).
  • Three hostnames: the site, api. and feeds., each with TLS, since the services are did:web.
  • Somewhere to run three containers, each with a small persistent volume (SQLite).
  • Optional: a geocoder, map tiles, an embeddings API, VAPID keys for push. See Optional features.

The steps

Draft outline
  1. Generate keys (scripts/gen-keys.sh or just keys).
  2. Configure each service (Configuration).
  3. Deploy and point the domains (Deploying).
  4. Wait for each service's /_ready.
  5. Sign in as the community identity: setup mode creates the self management space, then "Create your first space" makes general.
  6. Connect the community session; make your first community admin.
  7. Publish the lexicons and _lexicon records.

Trying it locally

Draft outline

The integration rig (tools/rig, docs/integration.md) runs a PLC, PDSes, and all three services with fixtures, behind a tunnel.