template-test1/app/utils/config.py
2025-11-12 07:33:43 +00:00

39 lines
938 B
Python

from enum import Enum
from pydantic_settings import BaseSettings
class AppEnvironment(str, Enum):
PRODUCTION = "prod"
DEVELOPMENT = "dev"
TESTING = "test"
class Config(BaseSettings):
API_V1_STR: str = "/api/v1"
APP_VERSION: str = "Unversioned API"
ENV: AppEnvironment = AppEnvironment.DEVELOPMENT
UVICORN_HOST: str = "0.0.0.0"
UVICORN_PORT: int = 8888
BACKEND_CORS_ORIGINS: str = ""
PROJECT_NAME: str = "template-test1"
LOGGING_LEVEL: str = "INFO"
FREELEAPS_PRODUCT_ID: str = "FREELEAPS_PRODUCT_ID"
ENVIRONMENT: str = "alpha"
def is_development(self) -> bool:
return self.ENV == AppEnvironment.DEVELOPMENT
def is_testing(self) -> bool:
return self.ENV == AppEnvironment.TESTING
def is_production(self) -> bool:
return self.ENV == AppEnvironment.PRODUCTION
settings = Config(_env_file=".env", _env_file_encoding="utf-8")