from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from contextlib import asynccontextmanager from app.core.database import init_db from app.api.v1 import auth, familias, checklist, beneficios, documentos, dashboard @asynccontextmanager async def lifespan(app: FastAPI): await init_db() yield app = FastAPI(title="CARONTE API", description="O barqueiro que guia famílias pelo rio burocrático pós-óbito", version="1.0.0", lifespan=lifespan) app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) app.include_router(auth.router, prefix="/api/v1") app.include_router(familias.router, prefix="/api/v1") app.include_router(checklist.router, prefix="/api/v1") app.include_router(beneficios.router, prefix="/api/v1") app.include_router(documentos.router, prefix="/api/v1") app.include_router(dashboard.router, prefix="/api/v1") @app.get("/") async def root(): return {"message": "🚣 CARONTE - Guiando famílias pelo rio burocrático", "docs": "/docs"}