Coach Watts
Your Open Source AI-Powered Endurance Coach
Key Features • Quick Start • Integrations • Documentation • Release Notes • Acknowledgements
🚀 Overview
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.
✨ Key Features
- 🔗 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.
🖼️ Visual Tour
| Performance Analytics | Training Calendar |
|---|---|
| AI Workout Analysis | Adaptive Planning |
|---|---|
| Planned Workouts | AI Coach Settings |
|---|---|
🔌 Integrations
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 |
🌍 Localization
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!
⚡ Quick Start
Prerequisites
- Node.js 24 (Active LTS — see
.nvmrc) - Docker (for PostgreSQL)
- Google Cloud Account (for Auth & Gemini API)
1. Clone & Install
git clone git@github.com:hdkiller/coach.git
cd coach
cp .env.example .env
pnpm install
2. Start Database
docker-compose up -d
# Starts PostgreSQL on port 5439
Note for MacOS users: Ensure Docker Desktop is running (e.g. open Docker.app via Spotlight).
3. Configure Environment
Edit the .env file to fill in your own API keys (see below):
vim .env # or on MacOS: open -a TextEdit .env
Note: You will need API keys for Google (Auth & Gemini), and optionally Intervals.icu, Strava, etc. See Getting Credentials.
4. Run Migrations
pnpm prisma:generate
npx prisma migrate dev
5. Launch Development Server
pnpm dev
Visit http://localhost:3099 and log in!
🛠️ CLI Tools
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-missing
📚 Documentation
We 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:
🤝 Contributing
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.
📄 License
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.
Is Coach Watts open source?
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.
❤️ Community & Support
- Discord: Join our Server
- GitHub: Star us on GitHub
- Issues: Report a Bug
Made with ❤️ for endurance athletes.