from pydantic_settings import BaseSettings class Settings(BaseSettings): model_config = {"env_prefix": "NTR_"} port: int = 8000 host: str = "127.0.0.1" db_path: str = "./ntr_fetcher.db" poll_interval_seconds: int = 3600 admin_token: str soundcloud_user: str = "nicktherat" show_day: int = 2 show_hour: int = 22 web_user: str | None = None web_password: str | None = None secret_key: str | None = None @property def dashboard_enabled(self) -> bool: return all([self.web_user, self.web_password, self.secret_key])