How josephmusiiwa06-eng/p2p-alpha-01 works
Play2Perform Alpha is a coach-facing early-childhood motor assessment app. Coaches sign in, register or select a child, enter four motor-test measurements, review an age-banded score, and save an assessment; child profiles expose assessment history, while shareable reports are read by token. The main internal layer is src/lib/data.ts, which the pages use for child, assessment, and report operations. The sampled excerpts do not show that module’s implementation or the report-generation caller, so those internal database and generation links are left unspecified.
Main entry points: data.ts Data operations · supabase.ts Supabase client · [childId]/page.tsx Enter test results · login/page.tsx Coach login
Components 15
Coach access
- Coach login
src/app/login/page.tsx - Coach dashboard
src/app/dashboard/page.tsx
Child records
- Child roster
src/app/children/page.tsx - Register child
src/app/children/new/page.tsx - Child profile
src/app/children/[id]/page.tsx
Assessment workflow
- Select child
src/app/assess/page.tsx - Enter test results
src/app/assess/[childId]/page.tsx - Age-based scoring
src/lib/scoring.ts
Reports and storage
- Data operations
src/lib/data.ts - Supabase client
src/lib/supabase.ts - Application schema
supabase/schema.sql - Shared report viewer
src/app/report/[token]/page.tsx
Other components
- Coach
- Supabase service
- Report reader
Connections 19
- Coach → Coach login: signs in
- Coach login → Supabase service: authenticates
- Coach login → Coach dashboard: routes after sign-in
- Coach dashboard → Supabase client: queries coach data
- Coach dashboard → Data operations: loads today’s assessments
- Child roster → Supabase client: checks coach
- Child roster → Data operations: loads children
- Register child → Supabase client: checks coach
- Register child → Data operations: creates child
- Select child → Supabase client: checks coach
- Select child → Data operations: loads children
- Enter test results → Supabase client: checks session
- Enter test results → Data operations: loads child
- Enter test results → Age-based scoring: calculates scores
- Enter test results → Data operations: saves assessment
- Child profile → Supabase client: checks coach
- Child profile → Data operations: loads child history
- Report reader → Shared report viewer: opens shared report
- Shared report viewer → Data operations: looks up token