Skip to content

WEB UI - #24

Open
GIC-de wants to merge 4 commits into
mainfrom
webui
Open

GIC-de wants to merge 4 commits into
mainfrom
webui

Conversation

@GIC-de

@GIC-de GIC-de commented Sep 16, 2026

Copy link
Copy Markdown
Member

Summary

Adds an experimental, embedded single-page web UI (pkg/server/webui/) for
creating and observing BNG Blaster test instances without calling the REST
API directly, plus the supporting API surface it needs:

  • New read endpoints: /_overview, /_streams, /_sessions, /_logs,
    /_files (+ per-file download), and /api/v1/interfaces (host network
    interfaces, used to populate the "New Instance" form)
  • Embedded OpenAPI/Swagger docs served under /docs
  • Response caching for the summary endpoints (pkg/server/cache.go) to
    avoid hammering the bngblaster control socket on repeated UI polling

The web UI, the interfaces endpoint, and the upload endpoint are new attack
surface with no authentication yet, so all three ship disabled by
default
behind -ui, -interfaces-api, and -upload flags (see the new
"Experimental Web UI" section in the README for how to turn them on).

Also includes some incidental fixes picked up along the way: corrected the
default bngblaster executable path, and config/logging tweaks for the
systemd packaging.

Test plan

  • go build ./...
  • go test ./...
  • Manual smoke test of the UI in a browser (create/start/stop an
    instance, check overview/streams/sessions/logs/files views, upload a
    file) — recommended before merging since this is a large new surface
    with no automated UI tests

🤖 Generated with Claude Code

@GIC-de GIC-de self-assigned this Sep 16, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant