this repo has no description
1# ============================================================================= 2# Server 3# ============================================================================= 4SERVER_HOST=127.0.0.1 5SERVER_PORT=3000 6 7# The public-facing hostname of the PDS (used in DID documents, JWTs, etc.) 8PDS_HOSTNAME=localhost:3000 9 10# ============================================================================= 11# Database 12# ============================================================================= 13DATABASE_URL=postgres://postgres:postgres@localhost:5432/pds 14 15# Connection pool settings (defaults are good for most deployments) 16# DATABASE_MAX_CONNECTIONS=100 17# DATABASE_MIN_CONNECTIONS=10 18# DATABASE_ACQUIRE_TIMEOUT_SECS=30 19 20# ============================================================================= 21# Blob Storage (S3-compatible) 22# ============================================================================= 23S3_ENDPOINT=http://localhost:9000 24AWS_REGION=us-east-1 25S3_BUCKET=pds-blobs 26AWS_ACCESS_KEY_ID=minioadmin 27AWS_SECRET_ACCESS_KEY=minioadmin 28 29# ============================================================================= 30# Valkey (for caching and distributed rate limiting) 31# ============================================================================= 32# If not set, falls back to in-memory caching (single-node only) 33# VALKEY_URL=redis://localhost:6379 34 35# ============================================================================= 36# Security Secrets 37# ============================================================================= 38# These MUST be set in production (minimum 32 characters each) 39# In development, set BSPDS_ALLOW_INSECURE_SECRETS=1 to use defaults 40 41# Server-wide secret for OAuth token signing (HS256) 42# JWT_SECRET=your-secure-random-string-at-least-32-chars 43 44# Secret for DPoP proof validation 45# DPOP_SECRET=your-secure-random-string-at-least-32-chars 46 47# Key for encrypting user signing keys at rest (AES-256-GCM) 48# MASTER_KEY=your-secure-random-string-at-least-32-chars 49 50# Set this ONLY in development to allow default/weak secrets 51# BSPDS_ALLOW_INSECURE_SECRETS=1 52 53# ============================================================================= 54# PLC Directory 55# ============================================================================= 56# PLC_DIRECTORY_URL=https://plc.directory 57# PLC_TIMEOUT_SECS=10 58# PLC_CONNECT_TIMEOUT_SECS=5 59 60# Optional: rotation key for PLC operations (defaults to user's key) 61# PLC_ROTATION_KEY=did:key:... 62 63# ============================================================================= 64# Federation 65# ============================================================================= 66# Appview URL for proxying app.bsky.* requests 67# APPVIEW_URL=https://api.bsky.app 68 69# Comma-separated list of relay URLs to notify via requestCrawl 70# CRAWLERS=https://bsky.network 71 72# ============================================================================= 73# Firehose (subscribeRepos WebSocket) 74# ============================================================================= 75# Buffer size for firehose broadcast channel 76# FIREHOSE_BUFFER_SIZE=10000 77 78# Disconnect slow consumers after this many events of lag 79# FIREHOSE_MAX_LAG=5000 80 81# ============================================================================= 82# Notification Service 83# ============================================================================= 84# Queue processing settings 85# NOTIFICATION_BATCH_SIZE=100 86# NOTIFICATION_POLL_INTERVAL_MS=1000 87 88# Email notifications (via sendmail/msmtp) 89# MAIL_FROM_ADDRESS=noreply@example.com 90# MAIL_FROM_NAME=My PDS 91# SENDMAIL_PATH=/usr/sbin/sendmail 92 93# Discord notifications (via webhook) 94# DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/... 95 96# Telegram notifications (via bot) 97# TELEGRAM_BOT_TOKEN=your-bot-token 98 99# Signal notifications (via signal-cli) 100# SIGNAL_CLI_PATH=/usr/local/bin/signal-cli 101# SIGNAL_SENDER_NUMBER=+1234567890 102 103# ============================================================================= 104# Repository Import 105# ============================================================================= 106# Set to "true" to accept repository imports 107# ACCEPTING_REPO_IMPORTS=false 108 109# Maximum import size in bytes (default: 50MB) 110# MAX_IMPORT_SIZE=52428800 111 112# Maximum blocks per import (default: 100000) 113# MAX_IMPORT_BLOCKS=100000 114 115# Skip verification during import (testing only) 116# SKIP_IMPORT_VERIFICATION=false 117 118# ============================================================================= 119# Account Registration 120# ============================================================================= 121# Require invite codes for registration 122# INVITE_CODE_REQUIRED=false 123 124# Comma-separated list of available user domains 125# AVAILABLE_USER_DOMAINS=example.com 126 127# ============================================================================= 128# Rate Limiting 129# ============================================================================= 130# Disable all rate limiting (testing only, NEVER in production) 131# DISABLE_RATE_LIMITING=1 132 133# ============================================================================= 134# Miscellaneous 135# ============================================================================= 136# Allow HTTP for proxy requests (development only) 137# ALLOW_HTTP_PROXY=1 138 139# Custom frontend directory (defaults to ./frontend/dist) 140# FRONTEND_DIR=/path/to/frontend/dist 141 142CARGO_MOMMYS_LITTLE=mister 143CARGO_MOMMYS_PRONOUNS=his 144CARGO_MOMMYS_ROLES=daddy 145CARGO_MOMMYS_EMOTES="🚛/🧱/🚜/🔩/🦺" 146CARGO_MOMMYS_MOODS=ominous