# wisp services run on the host; infrastructure and the reference pds run in compose. # Keep this explicit: missing or unknown NODE_ENV values refuse the local DB default. NODE_ENV=development LOCAL_DEV=true PORT=8000 # Default is a conservative 32 MiB. Set this only on a machine with enough # headroom for multipart parsing and per-file buffers. PUBLIC_UPLOAD_MEMORY_BUDGET_BYTES=805306368 DOMAIN=http://127.0.0.1:8000 CLIENT_NAME=Wisp.Place Dev BASE_DOMAIN=wisp.localhost PRIVATE_HOST=priv.wisp.localhost:3001 DATABASE_URL=postgres://postgres:postgres@127.0.0.1:5432/wisp # Optional: a local/replica endpoint for presentation-only eventual reads. # Use the restricted read role from the deployment runbook with # default_transaction_read_only=on, even if it points to the local primary. # Leave unset to use DATABASE_URL for every read. # DATABASE_READ_URL=postgres://wisp_read:readonly@127.0.0.1:5432/wisp REDIS_URL=redis://127.0.0.1:6379 # Server-managed webhook secrets fail closed unless this is explicitly set. # Generate a fresh canonical 32-byte key and use the same key in main-app and # webhook-service. Do not commit a real production key. # WEBHOOK_SECRET_ENCRYPTION_KEY="$(openssl rand -base64 32)" # Optional comma-separated decrypt-only old keys during a local rotation. # WEBHOOK_SECRET_ENCRYPTION_PREVIOUS_KEYS="" # `NODE_ENV=development` explicitly permits hosting's local disk source. For a # non-development single-node deployment, use HOSTING_ALLOW_DISK_SOURCE=true # only when S3_BUCKET and REDIS_URL are both intentionally absent. # HOSTING_ALLOW_DISK_SOURCE=true S3_BUCKET=wisp-dev PRIVATE_S3_BUCKET=wisp-private-dev S3_REGION=us-east-1 S3_ENDPOINT=http://127.0.0.1:9000 S3_FORCE_PATH_STYLE=true AWS_ACCESS_KEY_ID=minioadmin AWS_SECRET_ACCESS_KEY=minioadmin # Where a private origin sends visitors to prove their identity. The private hosts cannot # read the account cookie by design, so sign-in happens on main-app and returns a handoff. MAIN_APP_URL=http://localhost:8000 HOSTING_SERVICE_URL=http://127.0.0.1:3001 HOSTING_PORT=3001 BASE_HOST=wisp.localhost # The local PDS is quiet between deploys; this keeps the firehose connected with ping/pong # instead of treating silence as a dead relay. Development only, Bun runtime only. FIREHOSE_SOURCE_MODE=dev-pds FIREHOSE_SERVICE=ws://localhost:3300 FIREHOSE_SERVICE_SECONDARY= HEALTH_PORT=3002 WISP_PLC_DIRECTORY_URL=http://127.0.0.1:2582 PDS_FETCH_REWRITE_FROM=http://localhost:3300 PDS_FETCH_REWRITE_TO=http://pds.localhost:3300 OAUTH_HANDLE_RESOLVER_URL=http://localhost:3300/xrpc/com.atproto.identity.resolveHandle OAUTH_PLC_DIRECTORY_URL=http://127.0.0.1:2582 OAUTH_ALLOW_HTTP=true DISABLE_DNS_WORKER=true # Host port overrides for the dev infrastructure. Change these if another local # service already binds the defaults; docker-compose.dev.yml reads them directly. # Remember to update DATABASE_URL and REDIS_URL to match. # DEV_POSTGRES_PORT=5432 # DEV_REDIS_PORT=6379