Files
box-box/frontend
AmanTahiliani c2617d39bb feat: add replay track map scrubber
Spike: replay location fan-out is bounded with a semaphore at 4 concurrent GetLocation calls, covered by TestAssembleReplayFramesBoundsLocationFanOut.

Adds /api/v1/replay/frames with 5s interval floor, 3000-frame cap, nearest-sample snapping, and empty-driver omission. Wires RaceStoryCanvas to lazy-load replay frames plus cached track outlines when the map panel opens, sharing the existing scrubber/playback state across chart and map.

Tests: HOME=/private/tmp/box-box-home GOCACHE=/private/tmp/box-box-go-cache GOMODCACHE=/Users/aman/go/pkg/mod go test ./internal/web; go build ./... (same env, passed with read-only module stat-cache warning); npm run test; npx tsc --noEmit. Full go test ./... is blocked in this sandbox by existing network/listener-dependent internal/api and internal/news tests.
2026-07-11 18:17:15 -04:00
..
2026-07-11 18:17:15 -04:00
2026-05-25 01:10:44 -04:00
2026-05-25 01:10:44 -04:00
2026-05-25 01:10:44 -04:00
2026-05-25 02:04:16 -04:00

box-box Web Frontend

React Race Hub slice for the production Web UI.

Commands

npm install
npm run dev
npm test -- --run
npm run build

The Vite dev server proxies /api requests to the Go server on http://localhost:8080.

Run the backend separately:

go run cmd/main.go --web

Then open the React app, usually:

http://localhost:5173/race-hub

Load an ingested session with:

http://localhost:5173/race-hub?session_key=9472