← All builds
SaaS

TrainState — AI Fitness Coaching for Athletes

AI coaching app for performance athletes. Built on Next.js, Supabase, and Claude. Free to use. Approaching soft launch.

TrainState — AI Fitness Coaching for Athletes screenshot 1 of 3
Next.js 15SupabaseClaude APIVercel

Generic fitness apps are built for people who want to lose weight and hit step counts. They're not built for athletes who think in training blocks, track RPE, manage periodisation, and care about the relationship between load and recovery. TrainState is built for that second group.

The core idea: give athletes a coaching layer that actually understands how training works — not just "great job hitting your goal" notifications, but analysis that accounts for training load, adaptation cycles, and the specifics of performance sport. Claude does the heavy lifting. Athletes log workouts and biometrics; Claude processes that data with context about periodisation principles and surfaces insights that a good coach would catch — overreaching patterns, recovery deficits, readiness signals before key sessions. The system gets more useful as it accumulates data about how a specific athlete responds.

The coaching layer runs 12 parallel Supabase queries on every message to build a biometric-aware system prompt, streams responses via a sentinel-based parser that separates status updates from coach prose, and handles complex flows like multi-week plan generation with duplicate prevention and transactional calendar saves. The stack is Next.js 15, Supabase, the Claude API, and Vercel.

Currently in beta with real athletes.

Why this matters

Most fitness apps treat coaching as a feature — a badge or a leaderboard. TrainState treats it as the product. The bet is that athletes who train seriously are underserved by consumer fitness apps and will switch to something that actually speaks their language. Free at launch is intentional: get adoption, get data, get feedback, then build from there.