Commit graph

14 commits

Author SHA1 Message Date
50676a7cb8 refactor(ui): minimalistic utilitarian redesign across all views
New design language:
  - dark background, system sans for UI, monospace for data
  - single green accent, amber/red for warn/critical
  - square-bordered panels + tables, no rounded cards or shadows
  - status conveyed via left-border on overview cards + badges

Changes:
  - new app.css defines CSS vars + component classes (.panel, .tbl,
    .card, .btn, .input, .badge with [data-status=*])
  - new ServerWeb.DashboardNav function component for a shared top nav
    with active-link highlighting; replaces per-view navigation clutter
  - strip the Phoenix welcome scaffold (logo, version badge, twitter/GH
    links) from layouts/app.html.heex; leaves only flash + content
  - root.html.heex title suffix switched to 'Proxmox Monitor', body
    loses the Tailwind-white background
  - rewrite render/1 in all four LiveViews + login template to use the
    new classes; admin form now uses <.form for={@form}> and properly
    clears on success
  - login page redesigned to a single tight panel matching the rest

All 58 tests still pass; 'mix compile --warnings-as-errors' is clean.
2026-04-22 10:18:46 +02:00
579d7fc6e8 feat(server): public GET /health endpoint for uptime monitors
Returns 200 with {status: ok, version, db: ok} when SQLite is reachable,
503 when the DB probe fails. Unauthenticated so external monitors can
poll without credentials.
2026-04-22 08:48:14 +02:00
2f787ec31f chore(server): remove unused page_controller scaffold — / is now OverviewLive 2026-04-21 22:56:25 +02:00
667fd7160c feat(server): admin LiveView for host registration, rotate, delete 2026-04-21 22:55:29 +02:00
94034eea9b feat(server): vm search LiveView with name+IP filtering 2026-04-21 22:54:47 +02:00
d65832964e feat(server): host detail LiveView with metrics/pools/snapshots/storage/vms 2026-04-21 22:53:57 +02:00
d0507f290e feat(server): overview LiveView with status ampel + pubsub updates 2026-04-21 22:52:40 +02:00
62996d883d feat(server): router pipelines + live_auth hook for authenticated dashboard 2026-04-21 22:51:41 +02:00
4538945b85 feat(server): session-based auth plug + login controller/template 2026-04-21 22:51:11 +02:00
30b507ba6b feat(server): GET /api/hosts/:name returns latest fast/medium/slow samples 2026-04-21 22:30:35 +02:00
751e035579 feat(server): channel persists fast/medium/slow samples to metrics table 2026-04-21 22:28:36 +02:00
61595e0293 feat(server): host channel with token auth and metric events 2026-04-21 22:04:31 +02:00
d9a52db4ea feat(server): agent socket endpoint, clear online status on boot 2026-04-21 22:03:03 +02:00
b85d05afc8 feat(server): phoenix 1.7 scaffold with sqlite + liveview 2026-04-21 22:00:43 +02:00