From 81c78259373d9dd3945704917b667f875ea7bcd9 Mon Sep 17 00:00:00 2001 From: Steve Cliff Date: Fri, 1 May 2026 18:39:57 +0100 Subject: [PATCH] design: three hi-fi dashboard directions for review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Three deliberately differentiated takes on the dashboard so we can lock the visual register before the UI work starts (P1-23 onwards). v1 — Operator console (Linear/Datadog dark register). Dense table, monospace numerics, restrained colour, pulsing status dot only when a job is running. The natural fit for the audience and the most defensible choice. v2 — Editorial calm (Stripe/Notion light register). Serif hero headline that humanises the data, cards with breathing room in a 2-up grid, demoted "quiet hosts" strip, subtle rust accent. Reads as trustworthy infrastructure. v3 — Print spec (Tufte/aerospace monospace register). Pure monospace, near-monochrome, status as typeset glyphs (●▶▲○✗) so the screen survives greyscale. "Requires attention" block groups problem hosts at the top; activity tail reads like a real log. Most polarising; highest craft ceiling. Each file is self-contained (Tailwind via CDN + Google Fonts) and includes a philosophy preamble + the dashboard hero + a component vocabulary section so we can read the system, not just one screen. Co-Authored-By: Claude Opus 4.7 (1M context) --- design/v1-operator-console.html | 575 +++++++++++++++++++++++++++ design/v2-editorial-calm.html | 670 ++++++++++++++++++++++++++++++++ design/v3-print-spec.html | 666 +++++++++++++++++++++++++++++++ 3 files changed, 1911 insertions(+) create mode 100644 design/v1-operator-console.html create mode 100644 design/v2-editorial-calm.html create mode 100644 design/v3-print-spec.html diff --git a/design/v1-operator-console.html b/design/v1-operator-console.html new file mode 100644 index 0000000..d947527 --- /dev/null +++ b/design/v1-operator-console.html @@ -0,0 +1,575 @@ + + + + +restic-manager · v1 Operator Console + + + + + + + + +
+ + +
+
v1 · Direction A
+

Operator console.

+

+ Optimised for the daily 30-second glance. Dense by default, never fussy. Every + pixel earns its place; colour is reserved for state, not decoration. Numerics + are monospaced and right-aligned so the eye can scan a column without + tracking labels. Hover reveals secondary actions; primary actions are always visible. +

+

+ Reference: Linear, Datadog, Vercel observability. Built for someone who looks + at this every morning while their coffee brews. +

+

+ Not for: a public-facing landing page, a marketing surface, a screen anyone + shows to non-technical stakeholders. This is a tool, not a product page. +

+
+ + +
+
+ + +
+
+
+
restic-manager
+
v0.1.0-alpha
+
+
+
steve@dcglab
+ +
+
+
+ + +
+
+ +
+ +
+
+
+ + +
+
+
+
Fleet
+
12 hosts
+
+ 10online + 1degraded + 1offline +
+
+
+
Backed up
+
4.9 TB across 12 repos
+
23,649 snapshots total
+
+
+
Last 24h
+
147 jobs
+
144 succeeded · 2 failed · 1 cancelled
+
+
+
Open alerts
+
5 unresolved
+
oldest 3h · acknowledge in panel
+
+
+
+ + +
+ + +
+
+

Hosts

+
12 of 12
+
+
+ + + +
+
+ + +
+ +
+
+
Host
+
OS · arch
+
Last backup
+
Repo size
+
Snapshots
+
Alerts
+
Tags
+
+
+ + +
+
+
prod-db-01
+
linux/amd64
+
+ backup running…
+ started 3m ago +
+
412 GB
+
1,847
+
+
proddb
+
+
+ + +
+
+
prod-db-02
+
linux/amd64
+
+ succeeded · 4m ago +
+
389 GB
+
1,802
+
+
proddb
+
+
+ + +
+
+
prod-web-01
+
linux/amd64
+
+ succeeded · 11m ago +
+
87 GB
+
2,103
+
+
prodweb
+
+
+ + +
+
+
prod-web-02
+
linux/amd64
+
+ succeeded · 12m ago +
+
87 GB
+
2,098
+
+
prodweb
+
+
+ + +
+
+
prod-cache-01
+
linux/amd64
+
+ succeeded · 1h ago +
+
128 GB
+
1,402
+
3
+
prodcache
+
+
+ + +
+
+
homelab-nas
+
linux/arm64
+
+ succeeded · 2h ago +
+
3.7 TB
+
8,912
+
+
homelabstorage
+
+
+ + +
+
+
homelab-pi
+
linux/arm64
+
+ succeeded · 6h ago +
+
8.4 GB
+
421
+
+
homelabiot
+
+
+ + +
+
+
dev-laptop
+
linux/amd64
+
+ last seen 2d ago +
+
64 GB
+
127
+
1
+
devpersonal
+
offline
+
+ + +
+
+
windows-vm
+
windows/amd64
+
+ succeeded · 28m ago +
+
44 GB
+
156
+
+
stagingvm
+
+
+ + +
+
+
build-runner
+
linux/amd64
+
+ failed · 47m ago +
+
97 GB
+
2,847
+
1
+
cibuild
+
+
+ + +
+
+
backup-test
+
linux/amd64
+
+ never run +
+
+
+
+
test
+
+
+ + +
+
+
edge-node-eu
+
linux/arm64
+
+ succeeded · 7m ago +
+
23 GB
+
934
+
+
edgeprod
+
+
+ +
+
+ + +
+
+

Recent activity

+ View all jobs → +
+
+
+
Job
Host
Kind
Status
Started
Bytes / Δ
+
+
+
01KQH…E59B
+
prod-db-01
+
backup
+
running · 38%
+
3m ago
+
1.4 GB
+
+
+
01KQH…D9XK
+
prod-db-02
+
backup
+
succeeded
+
4m ago
+
1.2 GB
+
+
+
01KQH…7P2R
+
edge-node-eu
+
backup
+
succeeded
+
7m ago
+
18 MB
+
+
+
01KQH…M4QQ
+
prod-web-01
+
backup
+
succeeded
+
11m ago
+
42 MB
+
+
+
01KQH…9F8C
+
build-runner
+
backup
+
failed · repo locked
+
47m ago
+
+
+
+
+ +
+
+ + +
+

Component vocabulary

+

+ Pulled out of the live screen so the system reads cleanly. Anything that doesn’t appear + here doesn’t exist in this direction — and the goal is for the list below to stay short. +

+ +
+ + +
+
Status
+
+
+ online + heartbeat < 90s +
+
+ online · running job + pulse only when active +
+
+ degraded + open alerts > 0 +
+
+ offline + no heartbeat > 90s +
+
+ last job failed + distinct from offline +
+
+
+ + +
+
Buttons
+
+
+ + + + + +
+
+ One primary per page (Add host). Everything else is the + neutral secondary or ghost; danger only on destructive verbs. +
+
+
+ +
+ + +
+
Host row · 3 states
+
+
+
+
healthy-host
+
linux/amd64
+
succeeded · 5m ago
+
87 GB
+
2,103
+
+
prod
+
+
+
+
+
degraded-host
+
linux/amd64
+
succeeded · 1h ago
+
128 GB
+
1,402
+
3
+
prod
+
+
+
+
+
offline-host
+
linux/amd64
+
last seen 2d ago
+
64 GB
+
127
+
1
+
dev
+
offline
+
+
+
+ +
+ +
+ + + diff --git a/design/v2-editorial-calm.html b/design/v2-editorial-calm.html new file mode 100644 index 0000000..a17a348 --- /dev/null +++ b/design/v2-editorial-calm.html @@ -0,0 +1,670 @@ + + + + +restic-manager · v2 Editorial Calm + + + + + + + + +
+ + +
+
v2 · Direction B
+

Editorial calm.

+

+ Optimised for trust. The product fades, the data foregrounds. Generous + whitespace, a serif display face, one rust accent used sparingly. Status + reads as language, not flashing colour. The screen feels like a quietly + maintained ledger — something you look at and feel reassured. +

+

+ Reference: Stripe, Notion, the Pentagram-era Mailchimp dashboards. Tools + that feel like they respect your attention. +

+

+ Risk: an operator who scans this 30 seconds at a time may find it less + glanceable than a tighter table; calm has a density cost. +

+
+ + +
+
+ + +
+
+
+
restic-manager
+
v0.1.0-alpha
+
+
+
steve@dcglab
+ +
+
+
+ + +
+
+ +
+ +
+
+
+ + +
+ +
+
+
Fleet · last 24 hours
+

+ All but two of your hosts backed up cleanly today. +

+
+
+ +
+
+
Hosts
+
12
+
+ 10 online · + 1 degraded · + 1 offline +
+
+
+
Backed up
+
4.9 TB
+
23,649 snapshots
+
+
+
Last 24h
+
147 jobs
+
+ 144 ok · + 2 failed · + 1 cancelled +
+
+
+
Open alerts
+
5
+
oldest opened 3h ago →
+
+
+
+ + +
+
+

Hosts

+
+ Showing all 12 · + filter + group by tag +
+
+ +
+ + +
+
+
+
prod-db-01
+
linux/amd64
+
+ online · running +
+
+
+
Last backup
+
running…
+
started 3m ago
+
+
+
Repo size
+
412 GB
+
1,847 snapshots
+
+
+
Alerts
+
+
+
+
+
proddb
+
View →
+
+
+ + +
+
+
+
prod-db-02
+
linux/amd64
+
+ online +
+
+
+
Last backup
+
succeeded
+
4 minutes ago
+
+
+
Repo size
+
389 GB
+
1,802 snapshots
+
+
+
Alerts
+
+
+
+
+
proddb
+ +
+
+ + +
+
+
+
prod-cache-01
+
linux/amd64
+
+ degraded +
+
+
+
Last backup
+
succeeded
+
1 hour ago
+
+
+
Repo size
+
128 GB
+
1,402 snapshots
+
+
+
Alerts
+
3
+
review →
+
+
+
+
prodcache
+ +
+
+ + +
+
+
+
prod-web-01
+
linux/amd64
+
+ online +
+
+
+
Last backup
+
succeeded
+
11 minutes ago
+
+
+
Repo size
+
87 GB
+
2,103 snapshots
+
+
+
Alerts
+
+
+
+
+
prodweb
+ +
+
+ + +
+
+
+
homelab-nas
+
linux/arm64
+
+ online +
+
+
+
Last backup
+
succeeded
+
2 hours ago
+
+
+
Repo size
+
3.7 TB
+
8,912 snapshots
+
+
+
Alerts
+
+
+
+
+
homelabstorage
+ +
+
+ + +
+
+
+
build-runner
+
linux/amd64
+
+ last job failed +
+
+
+
Last backup
+
failed
+
47 minutes ago
+
+
+
Repo size
+
97 GB
+
2,847 snapshots
+
+
+
Alerts
+
1
+
+
+
+
cibuild
+ +
+
+ + +
+
+
+
dev-laptop
+
linux/amd64
+
+ offline · last seen 2d +
+
+
+
Last backup
+
succeeded
+
2 days ago
+
+
+
Repo size
+
64 GB
+
127 snapshots
+
+
+
Alerts
+
1
+
+
+
+
devpersonal
+ awaiting agent +
+
+ + +
+
+
+
backup-test
+
linux/amd64
+
+ never run +
+
+

+ Newly enrolled. No backup has run yet — kick off the first one to populate + this card. +

+
+
+
test
+ +
+
+ +
+ + +
+
Quiet hosts · last backup > 5min and no alerts
+
+ +
+
+
prod-web-02
+
linux/amd64 · 87 GB
+
+
12m ago
+
+
+
+
homelab-pi
+
linux/arm64 · 8.4 GB
+
+
6h ago
+
+
+
+
windows-vm
+
windows/amd64 · 44 GB
+
+
28m ago
+
+
+
+
edge-node-eu
+
linux/arm64 · 23 GB
+
+
7m ago
+
+
+
+
+ + +
+
+

Recent activity

+ View all jobs → +
+ +
+
+
prod-db-01
+
backup running…
+
38% · 1.4 GB transferred · ETA 2m
+
3m ago
+
+
+
prod-db-02
+
succeeded
+
1.2 GB transferred
+
4m ago
+
+
+
edge-node-eu
+
succeeded
+
18 MB transferred
+
7m ago
+
+
+
prod-web-01
+
succeeded
+
42 MB transferred
+
11m ago
+
+
+
build-runner
+
failed
+
repo locked — concurrent operation
+
47m ago
+
+
+
+ +
+
+ + +
+

Component vocabulary

+

+ A few honest pieces. The system stays small on purpose — every chip + and every button below is repeated in the live screen above, nothing more. +

+ +
+ +
+
Status chips
+
+
online heartbeat < 90s
+
online · running a job is in flight
+
degraded open alerts > 0
+
offline · last seen 2d no heartbeat > 90s
+
last job failed distinct from offline
+
never run enrolled but cold
+
+
+ +
+
Buttons
+
+ + + + +
+
+ One primary per page (Add host); everything else is the neutral + secondary. Quiet is reserved for "View →" affordances inside cards. +
+
+ +
+ + +
+
Host card · 3 states
+
+
+
+
+
healthy-host
+
linux/amd64
+
+ online +
+
+ 87 GB · 2,103 snapshots · last 11m ago +
+
+ +
+
+
+
degraded-host
+
linux/amd64
+
+ degraded +
+
+ 128 GB · 1,402 snapshots · 3 alerts +
+
+ +
+
+
+
offline-host
+
linux/amd64
+
+ offline +
+
+ 64 GB · 127 snapshots · last seen 2d ago +
+
+
+
+ +
+ +
+ + + diff --git a/design/v3-print-spec.html b/design/v3-print-spec.html new file mode 100644 index 0000000..7d3e1ca --- /dev/null +++ b/design/v3-print-spec.html @@ -0,0 +1,666 @@ + + + + +restic-manager · v3 Print Spec + + + + + + + + +
+ + +
+
v3 · Direction C
+

Print spec.

+

+ Optimised for legibility under any condition: bright sunlight, copy-pasted + into Slack as a screenshot, printed on A4 and stuck to a server cabinet. + Monospace throughout so columns line up without effort. Status conveyed by + typeset glyph ( + online · + degraded · + offline) so the screen survives being read in greyscale. One accent + colour, used only when something is wrong. Every horizontal rule earns its + weight; weight encodes hierarchy. +

+

+ Reference: Edward Tufte, vintage aerospace datasheets, restic's own + --json + output, the wireframe register but at maximum craft. +

+

+ Risk: the most polarising of the three. Some readers will love the + typographic discipline; others will read it as cold. There is no middle. +

+
+ + +
+ + +
+
+
+
+ RESTIC-MANAGER · DASHBOARD + / + v0.1.0-alpha + / + generated 2026-05-01 14:23 UTC +
+
+ steve@dcglab + / + sign out +
+
+
+ + +
+
+

restic-manager / fleet dashboard

+
+ + + + + + +
+
+
+
+ + +
+
+
+
FLEET
+
12 hosts
+
+ 10 online   + 1 degraded   + 1 offline +
+
+
+
BACKED UP
+
4.9 TB · 12 repos
+
+ 23,649 snapshots +
+
+
+
LAST 24H
+
147 jobs
+
+ 144 ok   + 2 failed   + 1 cancelled +
+
+
+
OPEN ALERTS
+
5 unresolved
+
+ oldest 3h · review → +
+
+
+
+ + +
+ +
+
+

Hosts

+ 12 of 12 — sorted by status, then last activity +
+
+ filter: + + +
+
+ +
+ + +
+
+
host
+
os/arch
+
last backup
+
size
+
snaps
+
alerts
+
tags
+
+
+ +
+ + +
▲ requires attention
+ + +
+
degraded
+
prod-cache-01
+
linux/amd64
+
ok 1h ago
+
128G
+
1,402
+
3
+
prodcache
+
+
+ +
+ + +
+
failed
+
build-runner
+
linux/amd64
+
repo locked 47m ago
+
97G
+
2,847
+
1
+
cibuild
+
+
+ +
+ + +
+
offline
+
dev-laptop
+
linux/amd64
+
last seen 2d ago
+
64G
+
127
+
1
+
devpersonal
+
offline
+
+ +
+ + +
● online · last 24h
+ + +
+
running
+
prod-db-01
+
linux/amd64
+
backup · 38% · ETA 2m
+
412G
+
1,847
+
+
proddb
+
+
+
+ + +
+
online
+
prod-db-02
+
linux/amd64
+
ok 4m ago
+
389G
+
1,802
+
+
proddb
+
+
+
+ + +
+
online
+
edge-node-eu
+
linux/arm64
+
ok 7m ago
+
23G
+
934
+
+
edgeprod
+
+
+
+ + +
+
online
+
prod-web-01
+
linux/amd64
+
ok 11m ago
+
87G
+
2,103
+
+
prodweb
+
+
+
+ + +
+
online
+
prod-web-02
+
linux/amd64
+
ok 12m ago
+
87G
+
2,098
+
+
prodweb
+
+
+
+ + +
+
online
+
windows-vm
+
windows/amd64
+
ok 28m ago
+
44G
+
156
+
+
stagingvm
+
+
+
+ + +
+
online
+
homelab-nas
+
linux/arm64
+
ok 2h ago
+
3.7T
+
8,912
+
+
homelabstorage
+
+
+
+ + +
+
online
+
homelab-pi
+
linux/arm64
+
ok 6h ago
+
8.4G
+
421
+
+
homelabiot
+
+
+
+ + +
+
never
+
backup-test
+
linux/amd64
+
no backup yet
+
+
+
+
test
+
+
+ +
+
+ + +
+
+

Activity tail

+ last 5 jobs · all hosts · view all +
+
+ +
+
+ 14:23:01.382 + prod-db-01 + ▶ running + backup · 38% · 1.4 GB · ETA 2m + 3m ago + …E59B +
+
+
+ 14:22:17.011 + prod-db-02 + ● ok + backup succeeded · 1.2 GB + 4m ago + …D9XK +
+
+
+ 14:19:44.227 + edge-node-eu + ● ok + backup succeeded · 18 MB + 7m ago + …7P2R +
+
+
+ 14:15:08.946 + prod-web-01 + ● ok + backup succeeded · 42 MB + 11m ago + …M4QQ +
+
+
+ 13:39:12.604 + build-runner + ✗ failed + repo locked — concurrent operation + 47m ago + …9F8C +
+
+
+ +
+ + +
+

Component vocabulary

+ +
+ + +
+
Status glyphs
+
+
+ + online + heartbeat < 90s +
+
+
+ + online · running + a job is in flight +
+
+
+ + degraded + open alerts > 0 +
+
+
+ + offline + no heartbeat > 90s +
+
+
+ + last job failed + distinct from offline +
+
+
+ + never + enrolled but cold +
+
+
+ + +
+
Buttons
+
+
+ + + + + +
+
+

+ Bracketed verbs read as commands. One filled "primary" per page (+ add host), + everything else outline. Ghost variant for inline view links. +

+
+ +
+ + +
+
Host row · 3 states
+
+
+
+
host
+
os/arch
+
last backup
+
size
+
snaps
+
alerts
+
tags
+
+
+
+ +
+
online
+
healthy-host
+
linux/amd64
+
ok 5m ago
+
87G
+
2,103
+
+
prod
+
+
+
+ +
+
degraded
+
degraded-host
+
linux/amd64
+
ok 1h ago
+
128G
+
1,402
+
3
+
prod
+
+
+
+ +
+
offline
+
offline-host
+
linux/amd64
+
last seen 2d ago
+
64G
+
127
+
1
+
dev
+
offline
+
+
+
+ +
+ +
+ + +