Commit Graph

3 Commits

Author SHA1 Message Date
larssand
922bd704eb Split the Guide page into tabs, matching the Settings/Event Manager pattern
The page had grown to ~20 stacked panels on one very long scroll - the same problem
already fixed twice this session for Settings and Event Manager. Grouped into 5 tabs
(Getting started, Create a race, Run a race, Training & results, Video guides) using
the same activeGuideTab-as-module-state approach so the selection survives an in-place
re-render (e.g. a language switch). The always-visible overview cards at the top are
unchanged.

Also investigated a "feels slow" concern raised alongside this: measured the page's
actual render cost in a real browser (median 0.6ms, on par with or faster than Settings/
Timing) and confirmed the periodic tickClock/updateSyncStatus intervals never re-render
an idle Guide page. No performance issue found - the perceived slowness was the page's
length, which this change addresses directly.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 19:59:15 +02:00
larssand
d76b0e8eef Refresh stale screenshots and add one for Event Manager's new tabs
guide.jpg was captured before this session's Schedule feature and video guides existed,
so it was missing both. Event Manager's tabbed layout (also from this session) had never
been pictured in the README at all. Added scripts/capture-screenshots.mjs as a reusable
tool for this instead of another throwaway script, since screenshot refreshes are clearly
a recurring need - reuses the same isolated-server/headless-Chrome pattern as the video
recorder and test suite, with one shared seeded demo dataset so future captures stay
visually consistent.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 17:30:44 +02:00
larssand
50586e8859 Fix malformed race clock format and refresh docs screenshots
formatRaceClock rendered a doubled-up, garbled time (e.g.
"02:48.20:207") everywhere a race clock is shown - Timing, Overlay,
Results archive, Judging, Training stint logs - because it
concatenated both a centiseconds and a milliseconds computation into
the same string. Only the milliseconds part was ever meant to be
there. Found while building realistic demo data for new screenshots,
since every prior test/demo session was empty and never exercised
this code path with a real result.

Also regenerates all screenshots in docs/screenshots against a
realistic seeded race (drivers, cars, qualifying heats, finals,
practice history, a real judging correction) instead of empty demo
data, adds two new ones (Managed AMMC config, the in-app Guide page)
aimed at helping a new user understand initial setup, removes 6
screenshots orphaned by an earlier README revision, and updates both
README.md and README.sv.md's screenshot tables accordingly.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-10 20:03:10 +02:00