Files
pop-fem-audit/tools/src/pop_fem_audit_tools/config.py
T

49 lines
1.2 KiB
Python

# Tools for A Feminist Audit of Pop Music.
# Copyright 2026 imacat. All rights reserved.
# Authors:
# imacat@mail.imacat.idv.tw (imacat), 2026/7/31
"""The configuration.
"""
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
"""The configuration settings."""
app_name: str = "Tools for A Feminist Audit of Pop Music"
"""The application name."""
admin_email: str = "imacat@mail.imacat.idv.tw"
"""The administrator email address."""
SQLALCHEMY_DATABASE_URL: str
"""The SQLAlchemy database URL."""
ANTHROPIC_API_KEY: str
"""The Anthropic API key."""
model_config = SettingsConfigDict(env_file=".env", extra="ignore")
"""The model configuration."""
__settings: Settings | None = None
"""The configuration settings."""
def get_settings() -> Settings:
"""Returns the configuration settings.
:return: The configuration settings.
"""
global __settings
if __settings is None:
__settings = Settings()
return __settings
def set_settings(settings: Settings) -> None:
"""Sets the configuration settings.
:param settings: The configuration settings.
:return: None.
"""
global __settings
__settings = settings