Spaces:
Running
Running
| from fastapi import FastAPI | |
| from fastapi.middleware.cors import CORSMiddleware | |
| from fastapi.staticfiles import StaticFiles | |
| from app.config import settings | |
| from app.database.db import init_db | |
| from app.routes import analytics, challans, upload, violations | |
| app = FastAPI(title=settings.app_name, version="0.1.0") | |
| app.add_middleware( | |
| CORSMiddleware, | |
| allow_origins=["*"], | |
| allow_methods=["*"], | |
| allow_headers=["*"], | |
| ) | |
| app.include_router(upload.router, prefix=settings.api_prefix, tags=["upload"]) | |
| app.include_router(violations.router, prefix=settings.api_prefix, tags=["violations"]) | |
| app.include_router(analytics.router, prefix=settings.api_prefix, tags=["analytics"]) | |
| app.include_router(challans.router, prefix=settings.api_prefix, tags=["challans"]) | |
| # Serve generated evidence images and challan crops | |
| app.mount("/evidence", StaticFiles(directory=settings.evidence_dir), name="evidence") | |
| app.mount("/challans", StaticFiles(directory=settings.challan_dir), name="challans") | |
| def on_startup(): | |
| init_db() | |
| def health(): | |
| return {"status": "ok", "service": settings.app_name} | |