import sys # Compatibility patch for importlib.metadata in Python < 3.10 # This fixes the AttributeError: module 'importlib.metadata' has no attribute 'packages_distributions' if sys.version_info < (3, 10): try: import importlib_metadata import importlib importlib.metadata = importlib_metadata except ImportError: pass from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from routers import auth, users, projects, activities, specialties, contractors, transcription, non_conformities, guest import os from fastapi.staticfiles import StaticFiles app = FastAPI(title="Sistema de Supervision API", version="0.1.0") # CORS (allow all for dev) app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) app.include_router(auth.router) app.include_router(users.router) app.include_router(projects.router) app.include_router(activities.router) app.include_router(specialties.router) app.include_router(contractors.router) app.include_router(transcription.router) app.include_router(non_conformities.router) app.include_router(guest.router) # Mount uploads directory to serve files if not os.path.exists("uploads"): os.makedirs("uploads") app.mount("/uploads", StaticFiles(directory="uploads"), name="uploads") @app.get("/") def read_root(): return {"message": "Sistema de Supervision API is running"} @app.get("/health") def health_check(): return {"status": "ok"}