You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.8 KiB
Bash

# ==============================================================================
# AI Weekly Synth - Environment Configuration
# ==============================================================================
# Copy this file to .env and fill in the values.
# NEVER commit .env to version control.
# ==============================================================================
# --- Database ---
# Connection string for Postgres. In docker-compose, the hostname is "db".
DATABASE_URL=postgres://ai_synth:CHANGE_ME@db:5432/ai_synth
POSTGRES_PASSWORD=CHANGE_ME
# --- Security ---
# 256-bit key for encrypting user LLM API keys at rest (64 hex characters).
# Generate with: openssl rand -hex 32
MASTER_ENCRYPTION_KEY=
# --- Application ---
# Public URL where the app is accessible (no trailing slash).
# Used for magic link URLs, CORS origin, and cookie domain.
APP_URL=https://synth.example.com
# Port for the backend HTTP server (inside the container).
PORT=8080
# Port for the backend HTTP server (outside the container).
EXT_PORT=8005
# Logging level. Options: error, warn, info, debug, trace.
# Format: "level" or "level,crate=level"
RUST_LOG=info,ai_synth_backend=debug
# Path to the built SolidJS frontend files.
# Default: ../frontend/dist (for local dev) or ./static (in Docker)
# STATIC_DIR=../frontend/dist
# --- Email (Resend) ---
# Sign up at https://resend.com and create an API key.
RESEND_API_KEY=re_CHANGE_ME
# Sender address. Must be a verified domain in Resend.
EMAIL_FROM=AI Weekly Synth <noreply@synth.example.com>
# --- Captcha (Cloudflare Turnstile) ---
# Sign up at https://dash.cloudflare.com/turnstile
TURNSTILE_SECRET_KEY=0x4AAAAAAA_CHANGE_ME
TURNSTILE_SITE_KEY=0x4BBBBBB_CHANGE_ME
# --- Generation ---
# Maximum time (in minutes) allowed for a synthesis generation before timeout.
# Default: 30
# GENERATION_TIMEOUT_MINUTES=30