# --- Essential Site Configuration --- # Your primary domain (e.g., example.com). Used to derive ALLOWED_HOSTS, CORS, and CSRF settings. DOMAIN="localhost" # Set to a long, random string in production (e.g. 50+ chars). REQUIRED in prod. SECRET_KEY="django-insecure-replace-this-in-production" # Which settings module to load. Use holy_backend.settings.dev locally, # holy_backend.settings.prod in production (Docker compose sets this). DJANGO_SETTINGS_MODULE=holy_backend.settings.dev # Set to "false" in production for security and performance DEBUG=true # Custom URL for the Django Admin interface (e.g., my-secret-admin/) ADMIN_URL="admin" # --- Celery / Redis --- # Broker and result backend for background jobs. Docker compose defaults to the bundled redis service. # DB 0 is used by Celery; DB 1 is used by Django cache (see DJANGO_CACHE_URL below). CELERY_BROKER_URL=redis://redis:6379/0 CELERY_RESULT_BACKEND=redis://redis:6379/0 # Run tasks synchronously (useful for local dev or CI). Unset in production. # CELERY_TASK_ALWAYS_EAGER=true # Django cache backend URL. Shares the redis instance on a different DB number. DJANGO_CACHE_URL=redis://redis:6379/1 # Flower (Celery monitoring UI) — exposed on :5555. Format: "user:password". # CHANGE BEFORE DEPLOY. FLOWER_BASIC_AUTH=admin:change-me # Worker/beat containers set this in docker-compose.yml; do not set globally. # SKIP_INIT=true # --- Advanced Networking (Optional, derived from DOMAIN if unset) --- # ALLOWED_HOSTS=example.com,another-domain.com # CSRF_TRUSTED_ORIGINS=https://example.com # CORS_ALLOWED_ORIGINS=https://example.com # FRONTEND_URL=https://example.com # VITE_API_URL=https://example.com/api/ # --- SMTP Configuration (Required for Email Verification) --- # For development, if EMAIL_HOST is empty, emails are printed to the console. EMAIL_HOST= EMAIL_PORT=587 # Use EMAIL_USE_TLS=true for STARTTLS (usually port 587) EMAIL_USE_TLS=true # Use EMAIL_USE_SSL=true for implicit SSL (usually port 465) EMAIL_USE_SSL=false EMAIL_HOST_USER="your-email@example.com" EMAIL_HOST_PASSWORD="your-password" # Set to 'true' if using a self-signed certificate (e.g. local SMTP server) EMAIL_SKIP_CERT_VERIFICATION=false # --- Frontend Configuration --- # Optional: defaults to ${DOMAIN}/api/ if not set # VITE_API_URL=https://example.com/api/ VITE_ALLOWED_HOSTS=localhost # --- Impressum / Contact Details (Required for German Law § 5 TMG) --- VITE_IMPRESSUM_NAME="Your First and Last Name" VITE_IMPRESSUM_STREET="Street Name and House Number" VITE_IMPRESSUM_CITY="Postal Code and City" VITE_IMPRESSUM_EMAIL="your-public-contact@email.com" VITE_IMPRESSUM_PHONE="+00 123 456789"