Sports coaching · Web app
2025DJP Athlete Platform
Full rebuild of a sports-performance coaching business into a Next.js platform: public programs storefront, private client dashboards, AI-assisted program building, and an admin back office.

- Role
- Lead full-stack developer
- Timeline
- 2025
- Stack
- Next.js 16TypeScriptSupabaseStripeClaude APITailwind CSSGoHighLevelYouTube API
The challenge
The coach needed one system for two audiences: private athletes on structured programs, and the public buying evergreen programs. And he wanted it without maintaining a native app or paying App Store overhead. The existing setup scattered clients, videos, and payments across tools.
What I built
I designed a single Next.js App Router codebase with three route groups (marketing, client, admin) protected by role-aware middleware. Supabase Postgres holds clients, programs, workouts, assessments, and progress; every table has a typed data-access module and a Zod schema. Stripe handles program checkout and subscriptions with webhooks reconciled against the database. An AI service matches exercises to athlete profiles from the coach's YouTube library, and GoHighLevel keeps marketing automation in sync.
Key features
- Marketing site, blog, and program storefront with Stripe checkout
- Client dashboard: workouts, progress charts, assessments, profile
- Admin panel: client CRM, exercise library, program builder with drag-and-drop
- AI-assisted exercise assignment and program generation
- Return-to-performance assessment engine
- Vitest unit suite and Playwright e2e across Chromium, Firefox, WebKit
Screens

