Coverage for src/app/core/settings.py: 100%
8 statements
« prev ^ index » next coverage.py v7.14.3, created at 2026-06-24 08:34 +0000
« prev ^ index » next coverage.py v7.14.3, created at 2026-06-24 08:34 +0000
1from pydantic_settings import BaseSettings, SettingsConfigDict
4class Settings(BaseSettings):
5 """
6 Central configuration for the application.
7 Values are loaded from environment variables first,
8 then fallback defaults.
9 """
11 model_config = SettingsConfigDict(
12 env_file=".env",
13 env_file_encoding="utf-8",
14 case_sensitive=False,
15 extra="ignore",
16 )
18 # App metadata
19 service_name: str = "app"
21 # Database
22 ### TODO: In production, this should be set to a more robust database like PostgreSQL or MySQL.
23 database_url: str = "sqlite:///./test.db"
25 # Runtime
26 environment: str = "development" # development | staging | production
28 # API
29 api_prefix: str = ""
32settings = Settings()