from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from database import engine, Base from routes import router # Create database tables Base.metadata.create_all(bind=engine) # Initialize FastAPI app app = FastAPI( title="Seismo Fleet Manager", description="Backend API for managing seismograph fleet status", version="0.1.0" ) # Configure CORS (adjust origins as needed for your deployment) app.add_middleware( CORSMiddleware, allow_origins=["*"], # In production, specify exact origins allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) # Include API routes app.include_router(router) @app.get("/") def root(): """Root endpoint - health check""" return { "message": "Seismo Fleet Manager API v0.1", "status": "running" } if __name__ == "__main__": import uvicorn uvicorn.run(app, host="0.0.0.0", port=8000)