import logging from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from .db import Base, engine from .routes import router from .config import get_settings settings = get_settings() logging.basicConfig( level=logging.DEBUG if settings.debug else logging.INFO, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", ) logger = logging.getLogger(__name__) Base.metadata.create_all(bind=engine) app = FastAPI( title="Agenda Tasks API", description="REST API for the Agenda Tasks application", version="1.0.0", ) app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) app.include_router(router) @app.on_event("startup") async def startup_event(): logger.info("Application starting up...") logger.info(f"Debug mode: {settings.debug}") @app.on_event("shutdown") async def shutdown_event(): logger.info("Application shutting down...")