How nevfel-gul/pt_react_native works
This appears to be a personal-training app for managing clients and their fitness assessments. The main workflow is to create a student, add assessment records, and review those records and the student’s progress. The app also includes calendar, analytics, premium access, promotions, AI features, and reminder functions. The README is only the Expo starter template, so these capabilities are inferred from the supplied tree and excerpts; links for unsampled screens and backend jobs are omitted where their wiring is unclear.
Main entry points: firestorePaths.ts Firestore paths · PremiumContext.tsx Premium state · index.tsx Student list · [id].tsx Student progress
Components 25
Trainer app
- Sign in
app/login.tsx - Student list
app/(tabs)/index.tsx - Calendar
app/(tabs)/calendar.tsx - Analytics
app/(tabs)/analiz.tsx - AI student chat
components/AiStudentSearchUI.tsx - Premium screen
app/(tabs)/premium.tsx
Client records
- Student form
app/newstudent.tsx - Student progress
app/student/[id].tsx - Assessment form
app/newrecord/[id].tsx - Assessment detail
app/record/[id].tsx - Firestore paths
services/firestorePaths.ts
Cloud services
- Firebase services
services/firebase.js - AI client
services/aiClient.ts - Callable functions
functions/src/index.ts - Reminder jobs
functions/src/jobs - Push sender
functions/src/push.ts
Premium and promos
- Premium state
constants/PremiumContext.tsx - Promo state
constants/PromoContext.tsx - Promo client
services/promo.ts - Promo functions
functions/src/promo/promo.ts - Promo administration
functions/src/admin/promoAdmin.ts
Other components
- Trainer
- Firestore
- OpenAI
- Push service
Connections 29
- Trainer → Sign in: signs in
- Trainer → Student list: manages clients
- Student list → Firestore paths: queries collections
- Student list → Student progress: opens profile
- Student form → Firestore paths: uses paths
- Assessment form → Firestore paths: uses paths
- Assessment form → Firestore: writes assessment
- Student progress → Firestore paths: uses paths
- Student progress → Firestore: reads progress
- Assessment detail → Firestore paths: uses paths
- Assessment detail → Firestore: reads assessment
- Firestore paths → Firestore: resolves references
- Calendar → Firestore: reads schedule
- Analytics → Firestore: reads metrics
- AI student chat → AI client: requests AI
- AI client → Firebase services: calls function
- Firebase services → Callable functions: dispatches callable
- Callable functions → OpenAI: requests completion
- Callable functions → Firestore: reads users
- Reminder jobs → Push sender: sends reminders
- Push sender → Push service: delivers pushes
- Premium state → Firebase services: uses auth and database
- Premium state → Firestore: listens and saves
- Premium screen → Premium state: shows access
- Promo state → Premium state: checks entitlement
- Promo state → Promo client: requests coupon
- Promo client → Promo functions: calls promo service
- Promo functions → Firestore: manages coupons
- Promo administration → Firestore: manages campaigns