this repo has no description
Rust 88.0%
Svelte 5.1%
TypeScript 4.8%
Shell 1.5%
Just 0.1%
Dockerfile 0.1%
HTML 0.1%
JavaScript 0.1%
Other 0.4%
46 1 0

Clone this repository

https://tangled.org/lewis.moe/bspds-sandbox
git@tangled.org:lewis.moe/bspds-sandbox

For self-hosted knots, clone URLs may differ based on your setup.

README.md

BSPDS#

A production-grade Personal Data Server (PDS) for the AT Protocol. Drop-in replacement for Bluesky's reference PDS, written in rust with postgres and s3-compatible blob storage.

Features#

  • Full AT Protocol support (com.atproto.* endpoints)
  • OAuth 2.1 provider (PKCE, DPoP, PAR)
  • WebSocket firehose (subscribeRepos)
  • Multi-channel notifications (email, discord, telegram, signal)
  • Built-in web UI for account management
  • Per-IP rate limiting

Quick Start#

cp .env.example .env
podman compose up -d
just run

Configuration#

See .env.example for all configuration options.

Development#

Run just to see available commands.

just test
just lint

Production Deployment#

Quick Deploy (Docker/Podman Compose)#

Edit .env.prod with your values. Generate secrets with openssl rand -base64 48.

cp .env.prod.example .env.prod
podman-compose -f docker-compose.prod.yml up -d

Installation Guides#

Guide Best For
Debian Debian 13+ with systemd
Alpine Alpine 3.23+ with OpenRC
OpenBSD OpenBSD 7.8+ with rc.d
Containers Podman with quadlets or OpenRC
Kubernetes You know what you're doing

License#

TBD