# Golf Game Server Configuration # Copy this file to .env and adjust values as needed # Server settings HOST=0.0.0.0 PORT=8000 DEBUG=true LOG_LEVEL=DEBUG # Per-module log level overrides (optional) # These override LOG_LEVEL for specific modules. # LOG_LEVEL_GAME=DEBUG # Core game logic # LOG_LEVEL_AI=DEBUG # AI decisions (very verbose at DEBUG) # LOG_LEVEL_HANDLERS=DEBUG # WebSocket message handlers # LOG_LEVEL_ROOM=DEBUG # Room/lobby management # LOG_LEVEL_AUTH=DEBUG # Auth stack (auth, routers.auth, services.auth_service) # LOG_LEVEL_STORES=DEBUG # Database/Redis operations # --- Preset examples --- # Staging (debug game logic, quiet everything else): # LOG_LEVEL=INFO # LOG_LEVEL_GAME=DEBUG # LOG_LEVEL_AI=DEBUG # # Production (minimal logging): # LOG_LEVEL=WARNING # Environment (development, staging, production) # Affects logging format, security headers (HSTS), etc. ENVIRONMENT=development # Legacy SQLite database (for analytics/auth) DATABASE_URL=sqlite:///games.db # V2: PostgreSQL for event store # Used with: docker-compose -f docker-compose.dev.yml up -d POSTGRES_URL=postgresql://golf:devpassword@localhost:5432/golf # V2: Redis for live state cache and pub/sub # Used with: docker-compose -f docker-compose.dev.yml up -d REDIS_URL=redis://localhost:6379 # Room settings MAX_PLAYERS_PER_ROOM=6 ROOM_TIMEOUT_MINUTES=60 # Security (optional) # SECRET_KEY=your-secret-key-here # INVITE_ONLY=false # ADMIN_EMAILS=admin@example.com,another@example.com # V2: Email configuration (Resend) # Get API key from https://resend.com # RESEND_API_KEY=re_xxxxxxxx # EMAIL_FROM=Golf Game # V2: Base URL for email links # BASE_URL=http://localhost:8000 # V2: Session settings # SESSION_EXPIRY_HOURS=168 # V2: Email verification # Set to true to require email verification before login # REQUIRE_EMAIL_VERIFICATION=false # V2: Rate limiting # Set to false to disable API rate limiting # RATE_LIMIT_ENABLED=true # V2: Error tracking (Sentry) # Get DSN from https://sentry.io # SENTRY_DSN=https://xxx@xxx.ingest.sentry.io/xxx