""" Database engine and session management. Provides get_db dependency for FastAPI route injection. """ from sqlmodel import SQLModel, Session, create_engine from app.core.config import settings from typing import Generator engine = create_engine(settings.DATABASE_URL, echo=settings.DEBUG) def create_db_tables(): """Create all database tables from SQLModel metadata.""" from app.models.user import User # noqa: F401 - ensure model is registered from app.models.todo import Todo # noqa: F401 - ensure model is registered SQLModel.metadata.create_all(engine) def get_db() -> Generator[Session, None, None]: """Yield a database session for request-scoped dependency injection.""" with Session(engine) as session: yield session