Skip to content

speedwatch v0.2.0 — UI overhaul

Choose a tag to compare

@lucvan lucvan released this 04 Jun 15:58
· 10 commits to main since this release

A full pass over the web UI focused on usability and information density.

Dashboard & navigation

  • New dashboard landing page: headline stats (passes today, fastest today, over-limit count, vehicles tracked, confirmed speeders), a "needs your attention" work queue (plateless passes, visual clusters to merge, low-confidence reviews), a top-vehicle leaderboard, and a recent-passes strip. The passes table now lives at /passes.
  • Left sidebar navigation replaces the thin top navbar — all sections plus a Calibrate/Settings group, live pipeline status, and the app version.

Readability

  • Speed banding across every view — green under the warn threshold, amber up to the limit, red over it. Configurable via SPEED_LIMIT_MPH (default 20) and SPEED_WARN_MPH (default 16).
  • Passes list decluttered: dropped low-value columns, added Today/Yesterday day dividers, relative timestamps, and "over X mph" / "no plate only" filters.
  • Vehicle page: fixed-size representative-image hero, banded stat tiles, and the dense grouping card split into clear "Similar plates" and "Visually similar" sections.
  • Session page: entry/exit stills shown once at a consistent size with a trajectory inset (no more duplicate images at arbitrary sizes).
  • Cover-fit images now crop from the top, keeping the vehicle visible when frames are scaled down.

New

  • Light/dark theme toggle (persisted, no flash on load).
  • Read-only /settings page showing the running configuration.

Fixes

  • Invalid placeholder colour value; passes empty-state colspan.