Files
hms-licht-ton/backend/app/config.py
T

44 lines
1.0 KiB
Python

"""Application configuration via Pydantic Settings."""
from pydantic_settings import BaseSettings
from functools import lru_cache
class Settings(BaseSettings):
"""Settings loaded from environment variables."""
# Database
database_url: str = "sqlite+aiosqlite:///./test.db"
# Redis
redis_url: str = "redis://localhost:6379/0"
# Rentman
rentman_api_token: str = ""
# JWT
jwt_secret: str = "change-me-in-production"
jwt_algorithm: str = "HS256"
jwt_expire_hours: int = 24
# SMTP
smtp_host: str = ""
smtp_port: int = 587
smtp_user: str = ""
smtp_password: str = ""
smtp_from: str = "info@hms-licht-ton.de"
# CORS
cors_origins: str = "https://hms.media-on.de,http://localhost:3000"
# Admin seed
admin_username: str = "admin"
admin_password: str = "change_me_in_production"
model_config = {"env_file": ".env", "extra": "ignore"}
@lru_cache
def get_settings() -> Settings:
"""Return cached settings instance."""
return Settings()