How bonifacho/sintesis_mobile works
SÍNTESIS is a role-based mobile learning platform: users authenticate, then enter student, teacher, or trainee experiences. Students browse subjects and OVAs, take assessments, and review results and progress; teachers manage groups and inspect student activity and results; trainees have read-only group and student oversight. The API client handles authenticated requests and trainee write restrictions, while auth state persists the session. Feature-level API wiring is based on the README and tree where screen source was not sampled.
Main entry points: academic.ts Academic API · client.ts HTTP client · index.tsx Role routing · authStore.ts Session state
Components 24
App navigation
- Role routing
app/index.tsx - Sign in
app/(auth)/login.tsx
Learning experience
- Student home
app/(student)/index.tsx - Subjects
app/(student)/subjects/index.tsx - OVA browsing
app/(student)/ovas/index.tsx - OVA media
app/(student)/ovas/video/[id].tsx - Assessment
app/(student)/ovas/exam/[ovaId].tsx - Exam result
app/(student)/ovas/exam/result/[attemptId].tsx - Student progress
app/(student)/progress/index.tsx
Academic oversight
- Teacher groups
app/(teacher)/index.tsx - Student oversight
app/(teacher)/students/index.tsx - Group activity
app/(teacher)/activity/index.tsx - Teacher results
app/(teacher)/results/index.tsx - Trainee groups
app/(trainee)/index.tsx - Observed students
app/(trainee)/students/index.tsx - Trainee metrics
app/(trainee)/stats/index.tsx
Client platform
- Auth API
src/api/auth.ts - Academic API
src/api/academic.ts - HTTP client
src/api/client.ts - Session state
src/store/authStore.ts - Academic models
src/models/academic.ts - Academic queries
src/hooks/useAcademic.ts
Other components
- User
- Learning backend
Connections 28
- User → Sign in: signs in
- Sign in → Auth API: submits credentials
- Auth API → HTTP client: sends request
- HTTP client → Learning backend: requests data
- Auth API → Session state: sets session
- Session state → Role routing: provides role
- Role routing → Student home: routes student
- Role routing → Teacher groups: routes teacher
- Role routing → Trainee groups: routes trainee
- Student home → Academic API: loads summary
- Subjects → Academic API: loads subjects
- OVA browsing → Academic API: loads OVAs
- OVA media → Academic API: loads OVA
- Assessment → Academic API: submits assessment
- Exam result → Academic API: loads result
- Student progress → Academic API: loads metrics
- Teacher groups → Academic API: loads groups
- Student oversight → Academic API: loads students
- Group activity → Academic API: loads activity
- Teacher results → Academic API: loads results
- Trainee groups → Academic API: loads groups
- Observed students → Academic API: loads students
- Trainee metrics → Academic API: loads metrics
- Academic queries → Academic API: queries data
- Academic API → HTTP client: sends requests
- Academic API → Academic models: uses types
- HTTP client → Session state: reads token
- HTTP client → Session state: blocks trainee writes