ride. sync. read.
Training dashboard for your rides.
No feed, no kudos, no leaderboard. Just your training – form, load and every ride in detail, on your own computer.
your form
Form, load, fitness.
Pick a period and see what changed – hours, intensity, zones – and what it did to your form.
every ride
Second by second.
Power, heart rate, speed and elevation – coloured by zone and tied to the map. Hover the chart, see the spot.
your year
One page per year.
Months, climbs, best efforts – the rides that mattered.
every road
All your roads, one map.
Every track as a heatmap. Filter by year, bike or place – click a road and see every ride that took it.
Your rides stay home.
Every ride is a plain file on your computer. No sign-up, no cloud, no one else’s server. Delete the folder and it’s gone.
get started
Four steps to your own rides.
- Strava subscription
- Node.js 22.12+
- Git · terminal
- ~10 min setup
-
Clone
Get the code.
git clone https://github.com/davidhellmann/casquette.gitcd casquette -
Look around
A made-up rider with three years of rides – on localhost:4321.
npm ci && npm run dev -
Connect
Create your API app on Strava, put its ID and secret into
.env, sign in once.cp .env.example .envnpm run strava:auth -
Sync
The first full sync takes hours to days – Strava’s rate limits. Stop it any time; it picks up where it left off.
npm run sync:all# later: npm run sync
Putting it online? Only behind a password – it contains your GPS tracks, start and end points included. Building and hosting · All steps: the README