Roadmap
Phase 1: CheerHub — Year-Round Gym Communication
Foundation
3/8Must be first — everything depends on identity and consent
1.1Family identity models — FamilyAccount, AthleteProfile, AthleteProfileLink, consent tracking
Done1.2Family auth API — register, login, refresh, profile management
Done1.3Family auth UI — mobile signup, login, child profile management
Done1.4Coach mobile login — existing User credentials on mobile, dual-role linking
1.5Navigation drawer — mode switcher, account panel, child switcher
1.6Gym enrollment — invite flow, enrollment requests, admin approval
1.7familyStore + gymStore — Zustand stores for family and gym state
1.8Gym Hub tab — repurpose Family tab with real data scaffolding + Media placeholder
Safety & Compliance
0/5Must be built before any messaging
2.1Consent infrastructure — ConsentRecord model, VPC flow, privacy policy gates
2.2Coach credential tracking — background check and SafeSport status
2.3Abuse reporting — model, API, mobile UI, admin dashboard
2.4Message retention and legal hold — configurable retention, export, freeze, PII separation
2.5Coach code of conduct — messaging safety policy acceptance gate
Announcement Feed
0/4Core daily use case
3.1Announcement model and API — schema + CRUD, audience filtering
3.2Announcement feed UI — mobile feed in Gym Hub
3.3Read receipts and pinning — engagement tracking
3.4Admin announcement composer — dashboard posting interface
Practice Calendar
0/4Schedule management for gym practices
4.1Calendar API — extend existing GymPractice for mobile
4.2Calendar UI — mobile calendar in Gym Hub
4.3Calendar admin — dashboard practice management
4.4Device calendar sync and practice reminders
Messaging
0/6Stream Chat with SafeSport enforcement
5.1Stream Chat setup — SDK integration, user sync, token generation
5.2Channel auto-creation — program feeds, announcement channels, coaches channel
5.3SafeSport enforcement layer — parent inclusion, minor restrictions, second-adult rule, content safety scanning
5.4Program feed UI — mobile chat screens with Stream SDK
5.5Direct messages — coach↔parent, parent↔parent (opt-in, same program), contact info protection
5.6Chat admin tools — moderation dashboard, message removal, user muting
Notifications
0/2Push notifications and preferences
6.1Unified notification system — announcements + chat + calendar
6.2Notification preferences — granular controls, communication hours enforcement
Integration & Polish
0/4Final assembly and production readiness
7.1Gym Hub home assembly — final dashboard with all sections
7.2Gym onboarding flow — invite links, join gym, welcome tutorial
7.3Offline support — cache gym data in SQLite
7.4Age transition flow — 17→18 birthday handling