Akbub's picture
deploy: Nexus AI v0.2.0 - SAP C4C Lead Creation UI included in fresh frontend build
d1f3f31
Raw
History Blame Contribute Delete
1.14 kB
from __future__ import annotations
import os
from dataclasses import dataclass
from pathlib import Path
def _bool_env(name: str, default: bool) -> bool:
value = os.getenv(name)
if value is None:
return default
return value.lower() in {"1", "true", "yes", "on"}
@dataclass(frozen=True, slots=True)
class Settings:
app_name: str = os.getenv("NEXUS_APP_NAME", "Speech Intelligence and Intent Detection")
app_env: str = os.getenv("NEXUS_ENV", "development")
api_prefix: str = os.getenv("NEXUS_API_PREFIX", "/api/v1")
storage_backend: str = os.getenv("NEXUS_STORAGE_BACKEND", "sqlite")
uploads_dir: Path = Path(os.getenv("NEXUS_UPLOADS_DIR", "uploads")).expanduser()
database_dir: Path = Path(os.getenv("NEXUS_DATABASE_DIR", "database")).expanduser()
logs_dir: Path = Path(os.getenv("NEXUS_LOGS_DIR", "logs")).expanduser()
sqlite_path: Path = Path(os.getenv("NEXUS_SQLITE_PATH", "database/nexus_ai.db")).expanduser()
use_groq_whisper: bool = _bool_env("USE_GROQ_WHISPER", True)
enable_request_logging: bool = _bool_env("NEXUS_ENABLE_REQUEST_LOGGING", True)
settings = Settings()