HomeRox
Hyrox readiness and finish-time projection from Apple Health data, computed entirely on device.
HomeRox projects a Hyrox finish time and a day-to-day readiness score from whatever health data you already have, without asking you to log anything.
The problem
Hyrox is eight one-kilometre runs interleaved with eight functional stations. Two athletes with the same 5K time can finish twenty minutes apart, because the sport punishes the transition between running and loaded work rather than either alone. Generic training plans don't model that, and the data needed to model it — heart rate, HRV, VO₂max, sleep, resting heart rate — is already sitting in Apple Health, unused.
Capability-adaptive scoring
The hardest design constraint is that no two athletes have the same data. An Apple Watch Series 4 exposes a different set of metrics than a Series 10, and Garmin, Whoop, Oura, and Coros all write different subsets into Apple Health.
Rather than gating on a device model, HomeRox detects capability by which data actually exists. Sub-scores with no backing data are dropped and the remaining ones re-weighted, so the aerobic score blends whichever of VO₂max, resting heart rate, and HRV are present. The app then tells you which signals are driving your number, so a readiness score is never an unexplained verdict.
Everything stays on the device
No server, no account, no analytics. Plan, logs, and health snapshot live in local storage — which sidesteps most of the server-side obligations that come with health data, and means there is no breach to have.
That constraint is deliberate rather than incidental: an app that reads HealthKit and ships it to a backend inherits a compliance surface far larger than a solo project should carry.
Stack
Expo and React Native with a watchOS companion, HealthKit via
@kingstinct/react-native-healthkit, and a Python model for finish-time
projection and fatigue estimation.