from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from backend.database import Base, engine from backend.routers import auth, categories, exports, imports, practice, questions, stats app = FastAPI(title="Problem Bank API", version="1.0.0") app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) Base.metadata.create_all(bind=engine) app.include_router(auth.router, prefix="/api/auth", tags=["auth"]) app.include_router(questions.router, prefix="/api/questions", tags=["questions"]) app.include_router(imports.router, prefix="/api/import", tags=["imports"]) app.include_router(exports.router, prefix="/api/export", tags=["exports"]) app.include_router(categories.router, prefix="/api/categories", tags=["categories"]) app.include_router(practice.router, prefix="/api/practice", tags=["practice"]) app.include_router(stats.router, prefix="/api/stats", tags=["stats"]) @app.get("/api/health") def health() -> dict: return {"status": "ok"}