21 lines
612 B
Python
21 lines
612 B
Python
from fastapi import FastAPI, Request
|
|
from fastapi.responses import HTMLResponse
|
|
from fastapi.templating import Jinja2Templates
|
|
from app.api import router as api_router
|
|
from app.crowdsec_api import list_decisions
|
|
|
|
app = FastAPI(title="CrowdSec Web UI")
|
|
|
|
# Include API
|
|
app.include_router(api_router, prefix="/api")
|
|
|
|
# Templates
|
|
templates = Jinja2Templates(directory="app/templates")
|
|
|
|
|
|
@app.get("/", response_class=HTMLResponse)
|
|
async def index(request: Request):
|
|
decisions = await list_decisions()
|
|
return templates.TemplateResponse(
|
|
"index.html", {"request": request, "decisions": decisions}
|
|
)
|