148 Commits

Author SHA1 Message Date
marvin 89cabf4baf Fix login username-focus race and tighten login/MFA spacing (v0.11.79) 2026-09-14 21:14:37 -04:00
marvin f39d405de8 Fix My Account layout: password form grid gap and panel spacing (v0.11.78) 2026-09-14 19:59:55 -04:00
marvin 2bb875eb98 Add optional two-factor authentication (TOTP) and a self-service My Account view (v0.11.77) 2026-09-14 19:49:23 -04:00
marvin d73f0cea3f Fix domain-less-primary Hosted Sites not getting a Caddy site block (v0.11.76) 2026-09-14 10:42:08 -04:00
marvin 72b2dc7458 Fix stale JS cache-bust versions (v0.11.75) 2026-09-14 10:32:42 -04:00
marvin b17fce9adb Groups toggle instant feedback, fix site domains and proxy cert-upload on edit (v0.11.74) 2026-09-14 10:14:58 -04:00
marvin 1ff8b6691d Center sidebar brand icon/wordmark (v0.11.73) 2026-09-14 09:45:39 -04:00
marvin 97d62a1c3b Larger centered brand marks, clickable sidebar logo, block common exploits toggle (v0.11.72) 2026-09-14 09:40:43 -04:00
marvin 94a651e4e5 Icon-on-top brand layout with new transparent icon/wordmark (v0.11.71) 2026-09-14 09:23:14 -04:00
marvin d30357777e Security & Updates panel restructure; Performance error-count tooltip with status breakdown 2026-09-13 22:01:07 -04:00
marvin 8c62eaca9d Documentation: add Dashboard and Performance sections, update Users menu reference 2026-09-13 21:51:24 -04:00
marvin 1050cf9144 Performance table: merge error counts into their duration columns, center numeric columns 2026-09-13 21:41:57 -04:00
marvin 538a617709 Performance view: move Domain/Range filters inside the Trend panel to match Logs 2026-09-13 21:22:13 -04:00
marvin eeecf7b586 Logs view: wrap Access requests in a dashboard-panel to match Gateway events 2026-09-13 20:45:37 -04:00
marvin 2c4be2bf42 Users: move Delete into options menu, fix missing dropdown arrow on role select 2026-09-13 20:36:50 -04:00
marvin 01035371ff Performance tab: add time-range selector, fix gap between Trend and Per-route panels 2026-09-13 20:23:33 -04:00
marvin d24edf4d6a Fix distorted sparkline labels: render as HTML overlay instead of SVG text 2026-09-13 20:15:35 -04:00
marvin 4e624323e4 Fix sparkline scaling: restore preserveAspectRatio, taller chart 2026-09-13 20:09:56 -04:00
marvin 02271d9072 Performance tab: sparkline axis, per-route card, fix table overflow/truncation 2026-09-13 20:03:26 -04:00
marvin 73edc8e665 Fix layout imbalance when Needs Attention collapses to all-clear banner (v0.11.60) 2026-09-13 19:43:35 -04:00
marvin f0857612e9 Live Health streaming/upstream tiles, tiled attention/activity panels with severity coloring and relative timestamps (v0.11.59) 2026-09-13 19:32:39 -04:00
marvin 1f0082d9ac Dashboard consistency batch: tiled scheduled jobs, unified readiness/certificate accordions, public IP check, performance throughput tab (v0.11.58) 2026-09-13 19:08:00 -04:00
marvin 5cce273b2c Move Scheduled Jobs panel directly below Live Health/Runtime row 2026-09-13 18:13:28 -04:00
marvin a857f8be0e Keep Live Health and Runtime/System permanently side by side; move Scheduled Jobs to its own row 2026-09-13 18:07:44 -04:00
marvin 6c3ef9f57b Fix Runtime panel reflow (broken selector after health-list rename) and light-theme chip backgrounds 2026-09-13 17:46:24 -04:00
marvin df318bed4f Match System panel styling to Live Health: tile grid, accent bar, light-theme tile fix 2026-09-13 17:39:36 -04:00
marvin bebf4322c0 Fix browser back/forward navigation: push a history entry per view change instead of replacing it 2026-09-13 17:32:09 -04:00
marvin 799276eaa1 Redesign Live Health panel: status-driven accent bar, tile grid layout, live-check pulse indicator 2026-09-13 17:29:03 -04:00
marvin 5f43f87474 Align dashboard icons with each page's existing icon, add icons to hosted/proxy/certificate tiles 2026-09-13 17:21:57 -04:00
marvin efc48fbff2 Redesign dashboard metrics: surface Redirect/Streaming hosts, fix Needs Attention status color, add marketing-site accent palette 2026-09-13 17:11:03 -04:00
marvin c8dade1e6e Add optimistic UI feedback and smooth transition to enable/disable toggles 2026-09-13 16:23:48 -04:00
marvin fe98cd64b0 Stop search from scrolling away and fix lingering nav button focus outline 2026-09-13 15:51:25 -04:00
marvin 731d41377c Documentation search shows only the single best match instead of a scrollable list 2026-09-13 14:29:24 -04:00
marvin 05ec32ff3c Rank documentation search results by title/keyword match before body text 2026-09-13 14:15:53 -04:00
marvin 34b7dbfdc3 Fix blue glow persisting on long pages by anchoring gradient to viewport 2026-09-13 13:53:39 -04:00
marvin edb5d58bb4 Fix styles.css cache-busting so CSS updates always reach the browser 2026-09-13 13:43:58 -04:00
marvin 34d7c2a77f Fix blue banner at top of Documentation page in dark theme 2026-09-13 13:31:31 -04:00
marvin 46360a2453 Fix Documentation section theming to follow light/dark mode like other pages 2026-09-13 13:21:41 -04:00
marvin a7201fbb8c Rewrite Documentation section: reorganize and cover every configurable field 2026-09-13 12:55:16 -04:00
marvin 44777072d5 Fix: remove stray JS that repositioned the summary bar after every load 2026-09-13 00:36:26 -04:00
marvin 575c1816c3 Fix: match Streaming Hosts summary bar, toggle, and dialog theming to Hosted/Proxy 2026-09-13 00:09:10 -04:00
marvin 9a4f91d40d Fix: register streams collection and stream_hosts table in storage.js 2026-09-12 23:48:22 -04:00
marvin dbc8f3490b Add Streaming Hosts: native TCP/UDP port forwarding with monitoring
Also adds scripts/apply-patch.sh to automate applying patches dropped
in ~/Downloads/Claude outputs.
2026-09-13 03:31:00 +00:00
marvin d2aed579f7 Trigger an immediate upstream health check when a proxy host's PATCH settings change 2026-09-12 22:45:21 -04:00
marvin 4a9cba5f8e Fix proxy host monitor-checkbox save/display bug; polish Certificates page loading text and spacing 2026-09-12 22:25:48 -04:00
marvin 8c3a8c8281 Fix Redirect Hosts empty-state flash and implicit-submit save crash
- Redirect Hosts' "Create your first redirect" panel now hides during
  the loading window on refresh, matching Hosted Sites/Proxy Hosts
  instead of staying visible the whole time (or briefly showing the
  wrong empty state when redirects do exist)
- Fix a crash when any dialog (Hosted Site, Proxy Host, User, Password,
  or the shared settings dialog) is submitted implicitly, e.g. by
  pressing Enter in a field instead of clicking the button.
  event.submitter is null in that case, which threw on
  `button.disabled = true` before the save request was ever sent,
  silently dropping the whole save with no visible error. Added a
  resolveSubmitter() fallback that finds the dialog's real submit
  button when event.submitter is null.
- Bump version to 0.11.32
2026-09-12 21:53:27 -04:00
marvin 815769c539 Fix log token leakage, orphaned certs, hash routing, icon-reset label, docs/backup theme contrast, and version drift
- Redact sensitive query-string params (token/secret/password/etc.) before storing access logs
- Clean up orphaned certificate files when a site/proxy/redirect is deleted, renamed, or has domains removed
- Add hashchange listener so back/forward navigation and deep links correctly route the app
- Fix activity log showing "undefined" instead of a username when resetting/updating a user's icon
- Fix illegible dark-on-dark text in the Docs page hero banner and the Backup & Restore form fields in light theme
- Give raw validation errors on proxy/site/redirect config routes the same "Gateway configuration rejected:" wording as other config errors
- Serve index.html with the real package.json version baked into the cache-busting query string instead of a stale hardcoded one
- Bump version to 0.11.31
2026-09-12 15:45:34 -04:00
marvin bbeeb633de Import Site Gateway app and clean up for standalone release 2026-09-12 17:58:54 +00:00