from fastapi import FastAPI, UploadFile, Form, Request from fastapi.middleware.cors import CORSMiddleware from fastapi.responses import HTMLResponse, JSONResponse, FileResponse from fastapi.staticfiles import StaticFiles from fastapi.templating import Jinja2Templates import shutil, os from tempfile import gettempdir app = FastAPI() # ✅ CORS to allow frontend access app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) # ✅ Static assets app.mount("/resources", StaticFiles(directory="resources"), name="resources") app.mount("/static", StaticFiles(directory="static"), name="static") # ✅ Jinja2 Templates templates = Jinja2Templates(directory="templates") # ✅ Serve Homepage @app.get("/", response_class=HTMLResponse) async def serve_home(request: Request): return templates.TemplateResponse("homeS.html", {"request": request})