Personal product · Open source
Run
Omics
Running analytics, built end-to-end.
Public demo runs on deterministic synthetic data
- Role
- End-to-end product & engineering
- Architecture
- Domain · Application · Infrastructure
- Source
- Open source
What it does.
01 · Ingest
Garmin activities and FIT files in, normalised and stored.
Distance, pace, heart rate, elevation.
02 · Model
Form, fitness and fatigue from training load.
Rolling loads, weekly targets, thresholds.
03 · Interpret
An LLM reads the model output, with a rules-based fallback.
Gemini · deterministic fallback path.
04 · Advise
One clear call for today's session.
Green light, steady, or hold back.
The interface

Real data stays private.
The product doesn't.
My own Garmin data never enters the public repository. It is fetched at build time into a directory the client bundle can't reach, and only server-side code reads it.
A fresh clone renders the same screens from a deterministic fictional season — so the demo is honest and the repository is safe to open.
- Private source configured
- Real season, read server-side
- Fresh clone
- Deterministic fictional season
- Pipeline
- Python · Garmin / FIT
- Frontend
- Next.js · TypeScript
- Delivery
- GitHub Actions · Vercel


