Your Open Source AI-Powered Endurance Coach
Key Features • Quick Start • Integrations • Documentation • Release Notes • Acknowledgements
Coach Watts is a comprehensive, self-hosted endurance coaching platform designed for cyclists, runners, and triathletes. It acts as your "Digital Twin," aggregating data from your favorite fitness platforms and using Google Gemini AI to provide professional-level analysis, personalized training plans, and daily recommendations.
Unlike static dashboards, Coach Watts understands context—analyzing not just your power numbers, but your recovery, sleep, nutrition, and life stress to guide you toward peak performance.
- 🔗 Unified Data Hub: Syncs automatically with multiple fitness platforms to create a 360° view of your athlete profile.
- 🤖 AI Coach:
- Workout Analysis: Detailed breakdown of every session with execution scores.
- Daily Recommendations: Smart suggestions ("Push hard" vs "Rest") based on HRV and sleep.
- Interactive Chat: High-performance AI SDK v5 powered chat for data-backed answers to your training questions.
- 📈 Advanced Analytics: Track Fitness (CTL), Fatigue (ATL), Form (TSB), and Power Curves with intuitive visualizations.
- 🥗 Nutrition Tracking: Metabolic fueling logic (Eco/Steady/Performance) based on training intensity.
- 📅 Smart Planning: Generate adaptive training plans that fit your schedule and goals.
- 🌍 Global Localization: Fully localized platform supporting over 10 languages with smart timezone handling.
- 📢 System Messages: Stay informed with important updates and coaching alerts directly in your dashboard.
| Performance Analytics | Training Calendar |
|---|---|
![]() |
![]() |
| AI Workout Analysis | Adaptive Planning |
|---|---|
![]() |
![]() |
| Planned Workouts | AI Coach Settings |
|---|---|
![]() |
![]() |
Coach Watts connects with your favorite endurance and wellness platforms:
| Platform | Features Synced |
|---|---|
| Intervals.icu | Workouts, Calendar, Power Metrics, Wellness/Weight |
| Strava | Activity Data, GPS Streams, Heart Rate |
| Whoop | Recovery, HRV, Sleep, Strain |
| Oura | Readiness, Sleep, HRV, SpO2, Stress, VO2 Max |
| Withings | Body Composition (Weight, Fat %), Sleep, Wellness |
| Garmin | Activity Data, Wellness, Health Metrics |
| Wahoo | Activity Data, Workouts |
| Polar | Training Sessions, Wellness, Recovery |
| Yazio | Nutrition Logs, Macros, Hydration |
| Hevy | Strength Training, Exercises, Sets & Reps |
| Fitbit | Steps, Sleep, Activity, Heart Rate |
| Rouvy | Indoor Cycling Workouts |
| Ultrahuman | CGM Data, Glucose Monitoring |
| Telegram | AI Coaching via Chat, Notifications |
Coach Watts is built for the global endurance community. We currently support:
- English (en), German (de), Spanish (es), French (fr)
- Hungarian (hu), Italian (it), Japanese (ja), Dutch (nl)
- Russian (ru), Chinese (zh)
We use Tolgee for managing translations. If you'd like to help translate Coach Watts into your language, please join our Discord!
- Node.js 24 (Active LTS — see
.nvmrc) - Docker (for PostgreSQL)
- Google Cloud Account (for Auth & Gemini API)
git clone git@github.com:hdkiller/coach.git
cd coach
cp .env.example .env
pnpm installdocker-compose up -d
# Starts PostgreSQL on port 5439Note for MacOS users: Ensure Docker Desktop is running (e.g. open Docker.app via Spotlight).
Edit the .env file to fill in your own API keys (see below):
vim .env # or on MacOS: open -a TextEdit .envNote: You will need API keys for Google (Auth & Gemini), and optionally Intervals.icu, Strava, etc. See Getting Credentials.
pnpm prisma:generate
npx prisma migrate devpnpm devVisit http://localhost:3099 and log in!
Coach Watts includes a powerful CLI for administrative tasks:
# General help
pnpm cw:cli --help
# Monitor Trigger.dev status
pnpm cw:cli trigger list --prod
# Manage users and locations
pnpm cw:cli users location list-missingWe have extensive documentation available in the docs/ directory:
- Architecture: System design and data flow.
- Database Schema: Detailed Prisma models.
- Timezone Handling: How we manage global athlete data.
- Chat Development: Strict AI SDK & Gemini sequencing rules.
- Release Notes: Detailed change logs for each version.
- Feature Guides:
We welcome contributions! Whether it's fixing bugs, improving documentation, or suggesting new features.
- Fork the repo.
- Create a branch (
git checkout -b feature/amazing-feature). - Commit your changes.
- Push to the branch.
- Open a Pull Request.
Distributed under the Apache License 2.0. See LICENSE for more information. Acknowledgements of third-party assets and contributors can be found in ACKNOWLEDGEMENTS.md.
Yes. Coach Watts is open source using the Apache 2.0 license. We are committed to open source software and working with our community to build a great product.
- Discord: Join our Server
- GitHub: Star us on GitHub
- Issues: Report a Bug
Made with ❤️ for endurance athletes.






