amazon-transcreation/backend/app/config.py
DJP 4a5c1c6dfe feat: add production deployment, fix auth flow, add nginx reverse proxy
- deploy.sh: one-command deploy script (--init for first time, bare for updates)
- docker-compose.prod.yml: production stack with nginx, multi-worker uvicorn, no volume mounts for code
- nginx/nginx.conf: reverse proxy with rate limiting, WebSocket support, static asset caching
- Fix login to use real backend API instead of mock localStorage tokens
- Add auth guard to AppShell (prevents flash-of-content on unauthenticated routes)
- JWT claims decoded client-side for user info (no extra /me call needed)
- Switch logo from missing .jpeg to .svg
- Frontend API URL defaults to same-origin (works behind nginx without CORS)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 12:53:48 -04:00

23 lines
656 B
Python

from pydantic_settings import BaseSettings
class Settings(BaseSettings):
"""Application settings loaded from environment variables."""
DATABASE_URL: str = "postgresql+asyncpg://transcreation:transcreation@db:5432/transcreation"
REDIS_URL: str = "redis://redis:6379/0"
ANTHROPIC_API_KEY: str = ""
JWT_SECRET_KEY: str = "CHANGE_ME_TO_A_RANDOM_SECRET"
JWT_ALGORITHM: str = "HS256"
JWT_EXPIRY_HOURS: int = 8
STORAGE_ROOT: str = "/storage"
LLM_MODEL: str = "claude-sonnet-4-6"
model_config = {
"env_file": ".env",
"env_file_encoding": "utf-8",
"extra": "ignore",
}
settings = Settings()