29 lines
660 B
Python
29 lines
660 B
Python
"""FastAPI admin application."""
|
|
from __future__ import annotations
|
|
|
|
from pathlib import Path
|
|
|
|
from fastapi import FastAPI
|
|
from fastapi.responses import FileResponse
|
|
from fastapi.staticfiles import StaticFiles
|
|
|
|
from admin.models import init_db
|
|
from admin.routes import router
|
|
|
|
app = FastAPI(title="Seed Admin", docs_url=None, redoc_url=None)
|
|
|
|
app.include_router(router)
|
|
|
|
_STATIC = Path(__file__).parent / "static"
|
|
app.mount("/static", StaticFiles(directory=str(_STATIC)), name="static")
|
|
|
|
|
|
@app.on_event("startup")
|
|
def on_startup() -> None:
|
|
init_db()
|
|
|
|
|
|
@app.get("/")
|
|
def dashboard() -> FileResponse:
|
|
return FileResponse(str(_STATIC / "dashboard.html"))
|