from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from starlette.responses import RedirectResponse from config.settings import ROOT_PATH from database.sqlalchemy import engine from models.users import Base from routes.companies import router as CompaniesRouter from routes.fincas import router as FincasRouter from routes.login import router as LoginRouter from routes.measures import router as MeasuresRouter app = FastAPI( title="ViƱedos API", root_path=ROOT_PATH, ) app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) Base.metadata.create_all(bind=engine) @app.get("/", include_in_schema=False) async def root(): return RedirectResponse(url="/docs") app.include_router(LoginRouter, tags=["Login"]) app.include_router(MeasuresRouter, tags=["Measures"]) app.include_router(CompaniesRouter, tags=["Companies"]) app.include_router(FincasRouter, tags=["Fincas"])