About this site
Workouts is a small personal mini-site — intended to live at something like workouts.mysite.com — that turns my Strava activity into an at-a-glance training dashboard.
What's here
- A widget portal — every block (recent activity, goals, metrics, gear watch, feeds…) is a widget instance you can move, resize, add, remove and configure from the Customise button.
- Your pages — the shipped Dashboard / Activities / Gear / Restricted pages are just the default layout; add, rename or delete pages as you like (down to a minimum of one).
- Settings — distance goals and a reset-to-defaults for the layout; shoe retirement targets are set on the shoe widgets themselves.
How it's built
- Static HTML, CSS and vanilla JavaScript — no framework, no build step.
- Hosted on Cloudflare Pages; the live Strava integration runs on a Cloudflare Pages Function so API tokens never touch the browser.
- The whole site sits behind Cloudflare Zero Trust Access — nothing here is public.
- Light/dark theming with a manual toggle (saved to your browser).
- The front end reads from a single
window.WORKOUTS_DATAobject, populated by fetching/api/summaryfrom a Cloudflare Pages Function that talks to the Strava API.
Current status
Live — the dashboard, activities feed and gear list are powered by real Strava data. See docs/IMPLEMENTATION_PLAN.md for how it's wired up, and future ideas are in docs/ROADMAP.md.
Data & privacy
The whole site sits behind Cloudflare Zero Trust Access — nobody but whoever you grant access to can view any of it, public-looking pages included.
Strava attribution
This site is not affiliated with, endorsed by, or sponsored by Strava. It's a personal project that reads one athlete's own data through the Strava API, subject to the Strava API Agreement. Strava, the Strava logo and related marks are trademarks of Strava, Inc.