Basic-Auth-only access lists (no CIDR rules) were unreachable: with
Default allow off, checkAccess denied every IP with 403 before the
auth prompt ever ran. New lists now default to allow-by-default, and
the label clarifies the interaction with Basic Auth.
- Rework the admin UI (topbar, sidebar, cards, tables, badges, stat
tiles) into a dark theme with a light/dark toggle, matching the
visual style requested for the project.
- Fix Dockerfile: chown /data to the distroless nonroot uid/gid before
the VOLUME declaration so a freshly created named volume is seeded
with writable permissions instead of root:root (was causing
"unable to open database file" on first run).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QTXFrNP1imCW7jtfL5SZrw
Self-contained HTTP/HTTPS/TCP/UDP reverse proxy manager written in Go,
with SQLite storage, a Bootstrap 5 admin UI (Go templates, no JS
framework), and a REST API under /api/v1.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QTXFrNP1imCW7jtfL5SZrw