from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker, DeclarativeBase from pathlib import Path DB_PATH = Path(__file__).parent / "firetracker.db" engine = create_engine(f"sqlite:///{DB_PATH}", echo=False) SessionLocal = sessionmaker(bind=engine) class Base(DeclarativeBase): pass def get_db(): db = SessionLocal() try: yield db finally: db.close() def init_db(): from models import UserProfile, Asset, Snapshot Base.metadata.create_all(bind=engine)