- Fix port mismatch: Dockerfile EXPOSE 8000, .env.example PORT=8000, compose.yml gets explicit PORT=8000 - Add thoughts-frontend/.env.example with all required vars - Document NEXT_PUBLIC_FEDIVERSE_DOMAIN in README - Document private cargo registry (k-ap on Gitea) - Add local dev workflow: make dev-infra → cargo run → bun dev - Split make targets: test-unit (no DB), test-integration, up
45 lines
1.4 KiB
Plaintext
45 lines
1.4 KiB
Plaintext
# Database (PostgreSQL required)
|
|
DATABASE_URL=postgres://postgres:password@localhost:5432/thoughts
|
|
|
|
# Authentication
|
|
JWT_SECRET=change-me
|
|
|
|
# Public base URL — used for ActivityPub actor URLs and canonical links
|
|
BASE_URL=http://localhost:3000
|
|
|
|
# Optional
|
|
HOST=0.0.0.0
|
|
PORT=8000
|
|
|
|
# CORS — comma-separated allowed origins, or * for permissive (default: *)
|
|
CORS_ORIGINS=*
|
|
# CORS_ORIGINS=https://your-nextjs-app.example.com
|
|
|
|
# Rate limiting — max requests per minute per IP (disabled by default)
|
|
# RATE_LIMIT=60
|
|
ALLOW_REGISTRATION=true # set to false to disable new sign-ups
|
|
RUST_ENV=development # set to "production" to disable AP debug mode
|
|
|
|
# NATS event bus (optional — federation and notifications still work without it,
|
|
# but events will not be delivered to the worker)
|
|
# NATS_URL=nats://localhost:4222
|
|
|
|
# Media storage — local filesystem (default) or S3/MinIO
|
|
STORAGE_BACKEND=local
|
|
STORAGE_PATH=./media # required when STORAGE_BACKEND=local
|
|
# STORAGE_PREFIX= # optional key prefix
|
|
|
|
# S3/MinIO (set STORAGE_BACKEND=s3 to use)
|
|
# S3_ENDPOINT=http://localhost:9000
|
|
# S3_ACCESS_KEY_ID=minioadmin
|
|
# S3_SECRET_ACCESS_KEY=minioadmin
|
|
# S3_BUCKET=thoughts
|
|
# S3_REGION=us-east-1
|
|
|
|
# Upload limits (optional, defaults shown)
|
|
# UPLOAD_MAX_BYTES=5242880
|
|
# UPLOAD_ALLOWED_TYPES=image/jpeg,image/png,image/gif,image/webp,image/avif
|
|
|
|
# Logging
|
|
RUST_LOG=info
|