All checks were successful
CI / Check / Test (push) Successful in 15m34s
SPA handles wrapup visuals client-side; server-side renderer was dead code pulling in ffmpeg + image crates.
56 lines
1.9 KiB
Plaintext
56 lines
1.9 KiB
Plaintext
# ── Required ──────────────────────────────────────────────────
|
|
|
|
# Database (SQLite — file auto-created on first run)
|
|
DATABASE_URL=sqlite:///data/movies.db
|
|
|
|
# Authentication
|
|
JWT_SECRET=change-me-to-a-random-string
|
|
|
|
# Movie metadata — one of these is required (TMDB preferred)
|
|
# TMDB_API_KEY=your-tmdb-key
|
|
OMDB_API_KEY=your-omdb-key
|
|
|
|
# ── Recommended ──────────────────────────────────────────────
|
|
|
|
# Public URL (used for ActivityPub federation and canonical links)
|
|
BASE_URL=https://yourdomain.example.com
|
|
|
|
# Enable sign-ups (default: false — set true so you can register)
|
|
ALLOW_REGISTRATION=true
|
|
|
|
# ── Image Storage (defaults to local filesystem) ─────────────
|
|
|
|
# IMAGE_STORAGE_BACKEND=local # default
|
|
# IMAGE_STORAGE_PATH=./images # default
|
|
|
|
# S3-compatible alternative (MinIO, AWS S3, etc.):
|
|
# IMAGE_STORAGE_BACKEND=s3
|
|
# MINIO_ENDPOINT=http://localhost:9000
|
|
# MINIO_BUCKET=posters
|
|
# MINIO_REGION=minio
|
|
# MINIO_ACCESS_KEY_ID=minioadmin
|
|
# MINIO_SECRET_ACCESS_KEY=minioadmin
|
|
|
|
# ── Optional ─────────────────────────────────────────────────
|
|
|
|
# TMDb enrichment (cast, crew, genres — separate from search metadata above)
|
|
# TMDB_API_KEY=your-tmdb-key
|
|
|
|
# Image conversion (converts uploaded posters to AVIF or WebP)
|
|
# IMAGE_CONVERSION_ENABLED=false
|
|
# IMAGE_CONVERSION_FORMAT=avif
|
|
|
|
# Server
|
|
# HOST=0.0.0.0
|
|
# PORT=3000
|
|
# RATE_LIMIT=60
|
|
# SECURE_COOKIES=true
|
|
# RUST_LOG=presentation=info,tower_http=info,worker=info
|
|
|
|
# CORS (for SPA development only)
|
|
# CORS_ORIGINS=http://localhost:5173
|
|
|
|
# Event bus — "db" (default, uses same database) or "nats"
|
|
# EVENT_BUS_BACKEND=db
|
|
# NATS_URL=nats://localhost:4222
|