echo-tutor / auth_module /config.py
Nanny7's picture
chore(auth): format and stabilize central auth route handling
1587d45
Raw History Blame Contribute Delete
1.29 kB
"""
⚙️ Auth Module — Configuration
"""
import os
from pydantic_settings import BaseSettings
from dotenv import load_dotenv
load_dotenv()
class AuthSettings(BaseSettings):
# JWT
JWT_SECRET_KEY: str = os.getenv("JWT_SECRET_KEY", "")
JWT_ALGORITHM: str = "HS256"
ACCESS_TOKEN_EXPIRE_MINUTES: int = 60 * 24 # 1 day
# Database
DATABASE_PATH: str = os.getenv("DATABASE_PATH", "users.db")
# Telegram (only needed if running your own bot)
TELEGRAM_BOT_TOKEN: str = os.getenv("TELEGRAM_BOT_TOKEN", "")
# App
EXTERNAL_URL: str = os.getenv(
"EXTERNAL_URL", os.getenv("RENDER_EXTERNAL_URL", "https://robovai.com")
)
# Centralized Nova Bot (for verification via @robovainova_bot)
NOVA_API_URL: str = os.getenv(
"NOVA_API_URL", ""
) # e.g. https://robovai-nova.onrender.com
NOVA_API_KEY: str = os.getenv("NOVA_API_KEY", "") # Shared secret with Nova
APP_ID: str = os.getenv("APP_ID", "default") # Your app identifier
# Auth strategy
AUTH_MODE: str = os.getenv("AUTH_MODE", "local") # local | central
AUTH_PROXY_TIMEOUT_SECONDS: int = int(os.getenv("AUTH_PROXY_TIMEOUT_SECONDS", "15"))
class Config:
env_file = ".env"
extra = "ignore"
auth_settings = AuthSettings()