How nyzxz/salita works
Salita is a Filipino language-and-culture learning app with student and teacher workflows. Students sign in to explore vocabulary and language history, practice with flashcards and quizzes, and submit assigned work; teachers manage student accounts and review submissions. The React client calls an Express API, with shared types defining data contracts. The graph includes documented but unsampled product capabilities; relationships are limited to those shown in excerpts, the source index, or README, so some UI-to-API links are omitted.
Main entry points: app.ts API application · App.tsx App routing · StudentDashboard.tsx Student dashboard · submissions.service.ts Submission service
Components 32
React client
- App routing
client/src/App.tsx - Session auth
client/src/auth/AuthContext.tsx - Sign in
client/src/pages/LoginPage.tsx - Student dashboard
client/src/pages/StudentDashboard.tsx - Teacher dashboard
client/src/pages/TeacherDashboard.tsx - Student management
client/src/pages/admin/UserManagementPage.tsx - Submission grading
client/src/pages/TeacherGradingPage.tsx - API transport
client/src/api/client.ts
Learning content
- Vocabulary explorer
client/src/components/vocab - Language timeline
client/src/components/timeline - Flashcards and quiz
client/src/components/quiz/QuizModule.tsx - Word content
server/src/data/words.data.ts - History milestones
server/src/data/milestones.data.ts - Quiz questions
server/src/data/quiz.data.ts
Classroom workflows
- Task submissions
client/src/hooks/useTasksAndSubmissions.ts - Task list
server/src/data/tasks.data.ts - Submission service
server/src/submissions/submissions.service.ts - Submission records
server/src/models/Submission.ts - Student accounts
server/src/admin/students.service.ts
Express API
- User records
server/src/models/User.ts - Authentication
server/src/auth/auth.service.ts - API application
server/src/app.ts - Auth routes
server/src/routes/auth.routes.ts - Admin routes
server/src/routes/admin.routes.ts - Task routes
server/src/routes/tasks.routes.ts - Submission routes
server/src/routes/submissions.routes.ts - Word routes
server/src/routes/words.routes.ts - Milestone routes
server/src/routes/milestones.routes.ts - Quiz routes
server/src/routes/quiz.routes.ts
Shared contracts
- Typed data contracts
shared/src/types.ts
Other components
- Learner
- Teacher
Connections 46
- Learner → Sign in: signs in
README.md - Teacher → Sign in: signs in
README.md - App routing → Sign in: routes to
client/src/App.tsx - App routing → Student dashboard: routes to
client/src/App.tsx - App routing → Teacher dashboard: routes to
client/src/App.tsx - App routing → Student management: routes to
client/src/App.tsx - App routing → Submission grading: routes to
client/src/App.tsx - Sign in → Session auth: uses
client/src/pages/LoginPage.tsx - Session auth → API transport: requests auth
client/src/auth/AuthContext.tsx - Student dashboard → Vocabulary explorer: presents
client/src/pages/StudentDashboard.tsx - Student dashboard → Flashcards and quiz: presents
client/src/pages/StudentDashboard.tsx - Student dashboard → Task submissions: loads work
client/src/pages/StudentDashboard.tsx - Student dashboard → Language timeline: presents
README.md - Vocabulary explorer → Word content: explores
README.md - Language timeline → History milestones: shows history
README.md - Flashcards and quiz → Quiz questions: uses questions
README.md - Task submissions → Task list: fetches tasks
client/src/hooks/useTasksAndSubmissions.ts - Task submissions → Submission service: submits work
README.md - Teacher → Teacher dashboard: opens dashboard
README.md - Teacher dashboard → Student management: opens management
README.md - Teacher dashboard → Submission grading: opens grading
client/src/App.tsx - Student management → API transport: calls API
client/src/pages/admin/UserManagementPage.tsx - Submission grading → API transport: calls API
client/src/pages/TeacherGradingPage.tsx - API transport → API application: sends requests
- API application → Auth routes: mounts
server/src/app.ts - API application → Admin routes: mounts
server/src/app.ts - API application → Task routes: mounts
server/src/app.ts - API application → Submission routes: mounts
server/src/app.ts - API application → Word routes: mounts
server/src/app.ts - API application → Milestone routes: mounts
server/src/app.ts - API application → Quiz routes: mounts
server/src/app.ts - Auth routes → Authentication: calls
server/src/routes/auth.routes.ts - Authentication → User records: reads and creates
server/src/auth/auth.service.ts - Admin routes → Student accounts: calls
server/src/routes/admin.routes.ts - Student accounts → User records: reads and updates
server/src/admin/students.service.ts - Submission routes → Submission service: calls
server/src/routes/submissions.routes.ts - Admin routes → Submission service: grades submissions
server/src/routes/admin.routes.ts - Submission service → Submission records: reads and writes
server/src/submissions/submissions.service.ts - Submission service → Task list: checks task IDs
server/src/submissions/submissions.service.ts - Task routes → Task list: serves tasks
server/src/routes/tasks.routes.ts - Word routes → Word content: serves words
server/src/routes/words.routes.ts - Milestone routes → History milestones: serves milestones
- Quiz routes → Quiz questions: serves questions
server/src/routes/quiz.routes.ts - Typed data contracts → Vocabulary explorer: defines data shape
README.md - Typed data contracts → Language timeline: defines data shape
README.md - Typed data contracts → Flashcards and quiz: defines data shape
README.md