Skip to content

views

views

HTML view routes for the web UI.

These routes render Jinja2 templates. Uses HTMX for dynamic updates without full page reloads.

render(request: Request, template: str, **context)

Helper to render a template with common context.

dashboard(request: Request) async

Main dashboard page.

jobs_list(request: Request, project: Optional[str] = None, group: Optional[str] = None, status: Optional[str] = None) async

Jobs listing page.

job_detail(request: Request, project: str, group: str, name: str, run_id: str) async

Job detail page with log viewer.

delete_job(request: Request, project: str, group: str, name: str, run_id: str, confirmation: str = Form(...)) async

Delete a job run.

checkpoint_detail(request: Request, project: str, group: str, job_name: str, suffix: str) async

Checkpoint detail page.

project_detail(request: Request, project: str) async

Project detail page.

partial_running_jobs(request: Request) async

Partial: running jobs list (for HTMX polling).

partial_stats(request: Request) async

Partial: dashboard stats (for HTMX polling).

partial_log(request: Request, project: str, group: str, name: str, run_id: str, tail: int | None = Query(default=None)) async

Partial: log content (for HTMX polling). Returns full log by default.