CoachSync is a web-based platform that helps coaches manage their teams and monitor athlete performance by integrating wearable data, team communication, and streamlined team organization tools.
The main goal of CoachSync is to provide coaches with a centralized dashboard where they can:
- Create and manage multiple athlete teams
- Invite athletes to join their teams with a simple email signup
- View athlete health and activity data by integrating wearable devices (starting with Fitbit)
- Send team-wide announcements via a one-way chat
- View consolidated performance data in a team dashboard
The MVP focuses on coaches as the primary users, with athletes joining teams via invite links and connecting their wearable devices.
- Frontend: Next.js (React-based framework)
- Styling: Tailwind CSS, shadcn/ui
- Authentication & Backend: Supabase (PostgreSQL, Auth, Realtime)
- Wearable Integration: Fitbit Web API
- Deployment: Vercel (frontend), Supabase (backend)
- Charting: Chart.js or Recharts for data visualization
- Validation: Zod for schema-based client/server validation
-
Team Management
- Coaches can create and delete teams
- Athletes can join via invite links
-
Authentication
- Simple email and password-based signup (via Supabase Auth)
- Centralized validation using Zod for both client and server
-
Fitbit Integration
- Athletes can connect their Fitbit to sync basic health metrics (steps, heart rate, etc.)
-
Team Dashboard
- Coaches can view consolidated data of their team members
-
Broadcast Chat
- Coaches can send one-way messages to their teams (announcement feed)
/pages # Next.js pages (routes)
/components # Shared React components
/lib # Utility functions (e.g. API helpers, Fitbit logic, Zod schemas)
/styles # Tailwind and global CSS
/supabase # Supabase-related setup
/public # Static assets# Install dependencies
npm install
# Run the dev server
npm run devYou must configure Supabase project keys and Fitbit API credentials to enable full functionality. See .env.example for required keys.
This project is being built by a 3-person team, each contributing across backend, frontend, and design. Roles are shared and rotated weekly.
- Athlete wearable data sync (via Fitbit API)
- Coach notifications and updates feed
- Team-level data visualization (steps, HR, trends)
- Invite system for athletes (via secure link/token)
- MVP is developed following Lean Startup principles and MoSCoW prioritization
- Initial Fitbit integration will use basic health metrics and expand over time
- Zod is used for all authentication-related validation (see
/lib/validations/auth.ts)
For questions, feature requests, or feedback, please contact the CoachSync team.