routing fix

This commit is contained in:
Justin Visser 2026-03-03 18:10:18 +01:00
parent 015a393a50
commit 562402540f

View file

@ -3,6 +3,7 @@ from contextlib import asynccontextmanager
from pathlib import Path from pathlib import Path
from fastapi import FastAPI from fastapi import FastAPI
from fastapi.responses import FileResponse
from fastapi.staticfiles import StaticFiles from fastapi.staticfiles import StaticFiles
from app.config import get_settings from app.config import get_settings
@ -42,4 +43,11 @@ def health_check() -> dict[str, str]:
# Serve built frontend SPA (must be registered last — catch-all) # Serve built frontend SPA (must be registered last — catch-all)
_static_dir = Path(__file__).resolve().parent.parent.parent / "static" _static_dir = Path(__file__).resolve().parent.parent.parent / "static"
if _static_dir.is_dir(): if _static_dir.is_dir():
app.mount("/", StaticFiles(directory=str(_static_dir), html=True), name="static") app.mount("/assets", StaticFiles(directory=str(_static_dir / "assets")), name="assets")
@app.get("/{full_path:path}")
async def serve_spa(full_path: str) -> FileResponse:
file = _static_dir / full_path
if file.is_file():
return FileResponse(file)
return FileResponse(_static_dir / "index.html")