Your Open Source AI-Powered Endurance Coach
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: Ask questions like "How is my fatigue compared to last month?" and get data-backed answers.
- 📈 Advanced Analytics: Track Fitness (CTL), Fatigue (ATL), Form (TSB), and Power Curves with intuitive visualizations.
- 🥗 Nutrition Tracking: AI analysis of your macro intake vs. training demands.
- 📅 Smart Planning: Generate adaptive training plans that fit your schedule and goals.
Coach Watts connects seamlessly with:
| Platform | Features Synced |
|---|---|
| Intervals.icu | Workouts, Calendar, Power Metrics, Fitness/Fatigue |
| Strava | Activity Data, GPS Streams, Heart Rate |
| Whoop | Recovery, HRV, Sleep, Strain |
| Yazio | Nutrition Logs, Macros, Hydration |
| Withings | Body Composition (Weight, Fat %), Sleep, Wellness |
| Hevy | Strength Training, Exercises, Sets & Reps |
- Node.js 20+
- Docker (for PostgreSQL)
- Google Cloud Account (for Auth & Gemini API)
git clone https://github.com/newpush/coach-wattz.git
cd coach-wattz
pnpm installdocker-compose up -d
# Starts PostgreSQL on port 5439Copy the example env file and fill in your API keys:
cp .env.example .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!
We have extensive documentation available in the docs/ directory:
- Architecture: System design and data flow.
- Database Schema: Detailed Prisma models.
- 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 MIT License. See LICENSE for more information.
- Discord: Join our Server
- GitHub: Star us on GitHub
- Issues: Report a Bug
Made with ❤️ for endurance athletes.