mirror of
https://github.com/AmanTahiliani/box-box.git
synced 2026-08-07 11:54:59 -04:00
80 lines
2.0 KiB
Markdown
80 lines
2.0 KiB
Markdown
# Phase 6 React Race Hub Analytics
|
|
|
|
## Purpose
|
|
|
|
Phase 6 expands the React Race Hub from a classification/grid slice into a more
|
|
useful race analysis surface. Phase 5 proved the React stack, API contract,
|
|
desktop layout, and phone table behavior. This phase should add the first
|
|
bespoke F1 analysis views without replacing the whole Web app.
|
|
|
|
This remains a frontend-led phase for Claude.
|
|
|
|
## Scope
|
|
|
|
Add Race Hub tabs or segmented views for:
|
|
|
|
- Overview / Classification
|
|
- Starting Grid
|
|
- Strategy
|
|
- Position Evolution
|
|
- Dataset Status
|
|
|
|
Strategy and position views should be built from local-first backend data only
|
|
when the backend exposes the needed datasets. If laps/stints/positions are not
|
|
yet available through `/api/v1/race-hub`, add clear missing states instead of
|
|
fake charts.
|
|
|
|
## Backend Contract
|
|
|
|
Current Race Hub API:
|
|
|
|
```text
|
|
GET /api/v1/race-hub?session_key=...
|
|
```
|
|
|
|
Current datasets:
|
|
|
|
- meeting
|
|
- session
|
|
- drivers
|
|
- results
|
|
- starting_grid
|
|
|
|
If analytics require laps, stints, pit stops, or position samples, keep backend
|
|
changes small and explicit. Do not reintroduce direct OpenF1 reads from the
|
|
React app.
|
|
|
|
## Design Direction
|
|
|
|
Improve the information hierarchy without drifting into generic dashboard UI:
|
|
|
|
- stronger timing-wall readability;
|
|
- compact controls;
|
|
- minimal panel framing;
|
|
- no decorative gradients or card sludge;
|
|
- team colors as data accents;
|
|
- mobile views that fit the active columns rather than relying on horizontal
|
|
scrolling.
|
|
|
|
## Non-Goals
|
|
|
|
Do not include these in Phase 6:
|
|
|
|
- live timing React rewrite;
|
|
- full season calendar rebuild;
|
|
- settings UI;
|
|
- ingest UI;
|
|
- static archive support;
|
|
- replacing the old Go-served Web UI entirely.
|
|
|
|
## Acceptance Criteria
|
|
|
|
Phase 6 is complete when:
|
|
|
|
- Race Hub has an ergonomic tab/segmented-view structure;
|
|
- classification and grid remain intact;
|
|
- analytics views show either real local data or honest missing states;
|
|
- desktop and phone layouts have been visually checked;
|
|
- frontend tests/build pass;
|
|
- Go build still passes.
|