this repo has no description
1# pds.js 2 3A zero-dependency AT Protocol Personal Data Server written in JavaScript, running on Cloudflare Workers with Durable Objects. 4 5> ⚠️ **Work in progress** - This is experimental. You probably shouldn't use this yet. 6 7## Prerequisites 8 9- Node.js 18+ 10- [shfmt](https://github.com/mvdan/sh) (optional, for `npm run format`) 11 ```bash 12 brew install shfmt 13 ``` 14 15## Quick Start 16 17```bash 18npm install 19 20# Create local dev config 21cp .env.example .dev.vars 22# Edit .dev.vars with your values 23 24# Run locally 25npm run dev 26``` 27 28## Configuration 29 30For local development, create `.dev.vars`: 31 32``` 33PDS_PASSWORD=your-password 34JWT_SECRET=your-secret 35RELAY_HOST=https://bsky.network # optional 36``` 37 38For production, use Cloudflare secrets: 39 40```bash 41wrangler secret put PDS_PASSWORD 42wrangler secret put JWT_SECRET 43wrangler secret put RELAY_HOST # optional 44``` 45 46## Testing 47 48```bash 49npm test # Unit tests 50npm run test:e2e # E2E tests (starts local server) 51``` 52 53## Deploy 54 55```bash 56wrangler deploy 57``` 58 59## Initialize 60 61After deployment, run the setup script to register with PLC and initialize: 62 63```bash 64npm run setup -- --pds https://your-pds.workers.dev 65``` 66 67This generates keys, registers your DID with the PLC directory, initializes the PDS, and saves credentials. Handle defaults to the worker hostname.