feat: add dark source inspection interface

This commit is contained in:
bot
2026-08-12 18:42:03 +03:00
parent db75f2c4f8
commit 277aa8a568
9 changed files with 1090 additions and 16 deletions
+13 -3
View File
@@ -1,5 +1,11 @@
from pathlib import Path
from fastapi import FastAPI
from fastapi import HTTPException
from fastapi import Request
from fastapi.responses import HTMLResponse
from fastapi.staticfiles import StaticFiles
from fastapi.templating import Jinja2Templates
from starlette.concurrency import run_in_threadpool
from app.inspection import InspectionError, UnsafeUrlError, inspect_url
@@ -11,10 +17,14 @@ app = FastAPI(
version="0.1.0",
)
app_directory = Path(__file__).resolve().parent
templates = Jinja2Templates(directory=app_directory / "templates")
app.mount("/static", StaticFiles(directory=app_directory / "static"), name="static")
@app.get("/", tags=["system"])
def root() -> dict[str, str]:
return {"name": "Media Ingest", "status": "running"}
@app.get("/", response_class=HTMLResponse, include_in_schema=False)
def index(request: Request) -> HTMLResponse:
return templates.TemplateResponse(request=request, name="index.html")
@app.get("/health", tags=["system"])