A community based topic aggregation platform built on atproto
1# Coves Environment Configuration
2# Copy this file to .env and update values for your deployment
3
4# === Database Configuration ===
5DATABASE_URL=postgres://dev_user:dev_password@localhost:5433/coves_dev?sslmode=disable
6
7# === PDS Configuration ===
8PDS_URL=http://localhost:3001
9
10# === Server Configuration ===
11APPVIEW_PORT=8081
12API_BASE_URL=https://api.coves.social
13
14# === Identity Resolution ===
15IDENTITY_PLC_URL=https://plc.directory
16IDENTITY_CACHE_TTL=1h
17
18# === Jetstream Configuration ===
19JETSTREAM_URL=wss://jetstream2.us-east.bsky.network/subscribe?wantedCollections=app.bsky.actor.profile
20JETSTREAM_PDS_FILTER= # Optional: filter to specific PDS
21
22# === OAuth Configuration ===
23OAUTH_COOKIE_SECRET= # Base64-encoded 32-byte secret (generate with: openssl rand -base64 32)
24OAUTH_PRIVATE_JWK= # Private JWK for signing OAuth tokens (generate with: cmd/genjwks)
25
26# === Verification Service (DID Configuration) ===
27# DID for signing phone verifications (e.g., did:web:coves.social)
28VERIFICATION_SERVICE_DID=did:web:coves.social
29
30# Private key for signing verifications (PEM format, P-256 EC key)
31# Generate with: openssl ecparam -name prime256v1 -genkey -noout
32VERIFICATION_PRIVATE_KEY= # Base64-encoded PEM or plain PEM
33
34# === SMS Provider (Telnyx) ===
35TELNYX_API_KEY= # Your Telnyx API key
36TELNYX_MESSAGING_PROFILE_ID= # Your Telnyx messaging profile ID
37TELNYX_FROM_NUMBER= # Phone number to send SMS from (E.164 format)
38
39# === Security Configuration ===
40# Secret pepper for hashing phone numbers (generate with: openssl rand -base64 32)
41PHONE_HASH_PEPPER= # NEVER change this after initial setup!
42
43# === Rate Limiting ===
44# Phone verification rate limits
45PHONE_VERIFICATION_RATE_LIMIT_PER_PHONE=3 # Max requests per phone per hour
46PHONE_VERIFICATION_RATE_LIMIT_PER_DID=5 # Max requests per user per day