Welcome to Race Platform
Phase 3 (Pilot Readiness) shipped the fuel + tyre + run-plan calculation chain, CGD designer, issues with workflow, permission rule profiles, API keys, HMAC-signed webhooks, and JSON import. See v0.3.0 — Pilot Readiness for the full list.
Race Platform is a cross-platform, real-time-collaborative race engineering tool for professional motorsport teams. It runs in your browser, on macOS, Windows, Linux, iPadOS, and Android — all from a single Flutter codebase — and keeps every engineer's view in sync over the pit-box network or the cloud.
This help site is the user-facing reference for everything the product currently ships. If you're an existing HH Data Management user, the data model and definition system will feel familiar by design.
Who Race Platform is for
The first version is built for IMSA GTD and LMP2 privateer or semi-factory teams — the beachhead identified in our 2026 market research. From there we plan to expand to:
- WEC and ELMS sportscar championships
- European GT3 / GT4 (DTM, GTWC, BGT)
- IndyCar and other open-wheel series with privateer teams
If you're outside those championships and want to evaluate the platform, please get in touch — the data model is series-agnostic and the customisation layer means a new series is a configuration job, not a code change.
High-level concepts
There are five concepts you should know before reading anything else:
- The data hierarchy. Everything hangs off
Championship → Event → Session → Car → Run → Lap. Each layer adds context for the layer below. See Data Model. - Definitions. Every entity (Lap, Setup, Run, Tyre, …) has a Definition — a JSON document that lists the parameters, math expressions, collections, and parts attached to that entity. Customising the product for your team is mostly editing Definitions. See Definitions.
- Custom Views. New screens are Custom Views. They are declarative JSON (Section → Block → Line → Cell for CID, or column lists for tables) and they show up in the ribbon and sidebar automatically once enabled. See CID and Views.
- Math expressions. A small, deterministic expression language computes derived values across every scope. Same engine runs in the client (Dart port) and on the server (TypeScript). See Math Expressions.
- Plugins. Behaviour you can't express in math (rolling
windows, telemetry KPIs, custom UI cells) is added as a
TypeScript plugin. The same plugin bundle runs identically on
the client (
flutter_js/ QuickJS) and on the server (Node V8 isolates / Cloudflare Workers). See Plugins Overview.
What you can do today
- Log in to a multi-tenant account, see Championships and Events.
- Edit a multi-tab Run Sheet (Main / Setup / Tyres / Ambient / Notes / Files / Overview) for a given session and car.
- Build a Run Plan in run-mode or lap-mode.
- Watch the Strategy Overview's stint timeline.
- Track tyre sets and per-tyre wear history.
- Manage setups, weather rows, lap markers, jobs and issues.
- Author Definitions, Custom Views, and Custom Columns from the
in-app admin screens (
/admin/*). - Upload a TypeScript plugin bundle, then invoke it server-side from the Plugin Runner screen.
What's still coming
A lot — see Whats New for the full list of what shipped, what's stubbed, and what's on the roadmap. The big-ticket items in flight are:
- Multi-user real-time editing (Automerge CRDT) over WebSocket
- Edge ingester live-timing auto-population of run sheets
- AI strategy assistants (pit window, stint forecast, what-if)
- Native flutter_js plugin runtime on iOS/Android/macOS/Linux
- Plugin capability runtime enforcement (declared today, not yet gated — see Capabilities and Security)
How this site is organised
| Section | What it covers |
|---|---|
| Getting Started | Install, log in, take a tour |
| Concepts | The model + customisation primitives |
| Management | Championship / Event / etc. entities |
| Event Workflow | Day-to-day race engineering surfaces |
| Analysis | Reports + plugin runner |
| Customization | Author definitions / views / columns |
| Plugins | Write, bundle, upload TypeScript plugins |
| Data | Import / export / attachments |
| Reference | Language + units + format strings + API |
| Architecture | How it runs locally and in the cloud |
| Tutorials | End-to-end walkthroughs |
| Whats New | Release notes |