import os from dataclasses import dataclass from dotenv import load_dotenv @dataclass class AppConfig: DEBUG: bool SECRET_KEY: str VAULT_PATH: str | None def load_config(vault_override: str | None = None) -> AppConfig: # Load .env if present load_dotenv() debug = os.getenv("FLASK_DEBUG", "0") in ("1", "true", "True") secret = os.getenv("SECRET_KEY", "dev-secret-change-me") vault_env = os.getenv("KB_VAULT_PATH") vault = vault_override or vault_env return AppConfig(DEBUG=debug, SECRET_KEY=secret, VAULT_PATH=vault)