Files
bellsystems-cp/backend/config.py

39 lines
993 B
Python

from pydantic_settings import BaseSettings
from typing import List
import json
class Settings(BaseSettings):
# Firebase
firebase_service_account_path: str = "./firebase-service-account.json"
firebase_storage_bucket: str = ""
# JWT
jwt_secret_key: str = "change-me-in-production"
jwt_algorithm: str = "HS256"
jwt_expiration_minutes: int = 480
# MQTT
mqtt_broker_host: str = "localhost"
mqtt_broker_port: int = 1883
mqtt_admin_username: str = "admin"
mqtt_admin_password: str = ""
mosquitto_password_file: str = "/etc/mosquitto/passwd"
# SQLite (MQTT data storage)
sqlite_db_path: str = "./mqtt_data.db"
mqtt_data_retention_days: int = 90
# App
backend_cors_origins: str = '["http://localhost:5173"]'
debug: bool = True
@property
def cors_origins(self) -> List[str]:
return json.loads(self.backend_cors_origins)
model_config = {"env_file": ".env", "extra": "ignore"}
settings = Settings()