WIP! A BB-style forum, on the ATmosphere!
We're still working... we'll be back soon when we have something to show off!
node
typescript
hono
htmx
atproto
1# AppView configuration
2PORT=3000
3FORUM_DID=did:plc:your-forum-did-here
4PDS_URL=https://your-pds.example.com
5JETSTREAM_URL=wss://jetstream2.us-east.bsky.network/subscribe
6
7# Database
8DATABASE_URL=postgres://atbb:atbb@localhost:5432/atbb
9
10# Web UI configuration
11# WEB_PORT=3001 # set in web package, or override here
12APPVIEW_URL=http://localhost:3000
13
14# Forum Service Account credentials (for AppView writes)
15FORUM_HANDLE=your-forum-handle
16FORUM_PASSWORD=your-forum-password
17
18# OAuth Configuration
19OAUTH_PUBLIC_URL=http://localhost:8080
20# The public URL where the forum is accessible (used as OAuth client_id and redirect_uri base).
21# AT Protocol fetches {OAUTH_PUBLIC_URL}/.well-known/oauth-client-metadata — nginx routes
22# this to AppView, so OAUTH_PUBLIC_URL must be the nginx address (not AppView directly).
23# For local dev with devenv: http://localhost:8080 (devenv nginx runs on port 8080)
24# For production: https://your-forum-domain.com
25
26SESSION_SECRET=CHANGE_ME_SEE_COMMENT_BELOW
27# Used for signing session tokens (prevent tampering)
28# Generate with: openssl rand -hex 32
29
30SESSION_TTL_DAYS=7
31# How long sessions last before requiring re-authentication (default: 7 days)
32
33# Optional: Redis session storage (leave blank to use in-memory)
34# REDIS_URL=redis://localhost:6379
35# If set, uses Redis for session storage (supports multi-instance deployment)
36# If blank, uses in-memory storage (single-instance only)
37
38# Role seeding
39SEED_DEFAULT_ROLES=true # Set to "false" to disable auto-seeding on startup
40DEFAULT_MEMBER_ROLE=Member # Role name to auto-assign to new memberships (empty for manual assignment)