From 09dc7d26137e631a24570282f3b8c412948282ab Mon Sep 17 00:00:00 2001 From: Michael Chus Date: Fri, 27 Mar 2026 23:31:29 +0300 Subject: [PATCH] feat(webui): apply light theme from chart submodule CSS Replace dark #0f1117 theme with clean white/Semantic-UI-inspired design matching the updated internal/chart submodule: white surface, dark sidebar (#1b1c1d), Lato font, blue accent (#2185d0), subtle borders. Also update submodule pointer to latest commit. Co-Authored-By: Claude Sonnet 4.6 --- audit/internal/webui/pages.go | 104 +++++++++++++++++----------------- internal/chart | 2 +- 2 files changed, 53 insertions(+), 53 deletions(-) diff --git a/audit/internal/webui/pages.go b/audit/internal/webui/pages.go index 3ebbd68..76b1b5d 100644 --- a/audit/internal/webui/pages.go +++ b/audit/internal/webui/pages.go @@ -21,62 +21,62 @@ func layoutHead(title string) string { ` + html.EscapeString(title) + ` @@ -242,7 +242,7 @@ func renderHealthCard(opts HandlerOptions) string { // ── Metrics ─────────────────────────────────────────────────────────────────── func renderMetrics() string { - return `

Live metrics — updated every 2 seconds. Charts use go-analyze/charts (grafana theme).

+ return `

Live metrics — updated every 2 seconds. Charts use go-analyze/charts (grafana theme).

Server
@@ -296,7 +296,7 @@ es.addEventListener('metrics', e => { (d.fans||[]).forEach(f => sysHTML += ''+f.name+''+f.rpm+' RPM'); if (d.power_w) sysHTML += 'Power'+d.power_w.toFixed(0)+' W'; const st = document.getElementById('sys-table'); - if (st) st.innerHTML = sysHTML ? ''+sysHTML+'
' : '

No sensor data (ipmitool/sensors required)

'; + if (st) st.innerHTML = sysHTML ? ''+sysHTML+'
' : '

No sensor data (ipmitool/sensors required)

'; (d.gpus||[]).forEach(g => { const t = document.getElementById('gpu-table-' + g.index); @@ -315,7 +315,7 @@ es.onerror = () => {}; // ── Acceptance Tests ────────────────────────────────────────────────────────── func renderTests() string { - return `

Run hardware acceptance tests and view results.

+ return `

Run hardware acceptance tests and view results.

` + renderSATCard("nvidia", "NVIDIA GPU", `
`) + renderSATCard("memory", "Memory", "") + @@ -356,7 +356,7 @@ func renderSATCard(id, label, extra string) string { // ── Burn-in ─────────────────────────────────────────────────────────────────── func renderBurnIn() string { - return `

Long-running GPU and system stress tests. Check Metrics page for live telemetry.

+ return `

Long-running GPU and system stress tests. Check Metrics page for live telemetry.

GPU Platform Stress
@@ -396,13 +396,13 @@ function runBurnIn(target) { func renderNetwork() string { return `
Network Interfaces
-

Loading...

+

Loading...

DHCP
-
+
Static IPv4
@@ -411,7 +411,7 @@ func renderNetwork() string {
-
+