CyclingRaceLab
A multi-tenant platform for cyclists and coaches that turns .fit/.gpx activities into training metrics, coach-to-athlete plans and live BLE telemetry.
On this page
Problem#
Most training platforms lock athlete data into proprietary ecosystems and focus on post-activity analysis. Coaches and athletes have limited control over raw performance data, custom analytics, and real-time monitoring during structured workouts.
What it does#
CyclingRaceLab is a self-hostable endurance training platform designed for athletes, coaches and sports-tech enthusiasts who want full ownership of their performance data.
Learn more: https://cyclingracelab.com
Key capabilities:
- Imports and analyzes
.fitand.gpxactivities. - Computes training metrics including NP, IF, TSS, ATL, CTL and training load trends.
- Manages coach-to-athlete training plans and workout execution.
- Streams live BLE telemetry through WebSockets for real-time monitoring.
- Supports multi-tenant deployments for teams, coaches and training organizations.
- Provides an open architecture that can be extended with custom analytics and integrations.
- Stores historical performance data in a time-series database optimized for longitudinal analysis.
Stack#
| Part | Technology |
|---|---|
| API and training metrics | Python, FastAPI, TimescaleDB |
| Live telemetry engine | Go |
| Frontend | Next.js, TypeScript |
| Messaging and cache | Redis |
| Edge routing | Traefik |
| Deployment | Docker, Docker Compose |
Why it exists#
CyclingRaceLab was created to explore a different approach to performance analysis: athlete-owned data, real-time telemetry, and a modern cloud-native architecture that can evolve without vendor lock-in.
Website: https://cyclingracelab.com
This is an independent project. A detailed architecture overview and technical notes will be published separately.