How iskesss/readysetread works
ReadySetRead is a children’s reading app: students choose books, take quizzes, and earn or spend coins on rewards; adults manage children and review progress. The React routes lead into feature pages and typed API clients, which call the FastAPI service. The backend owns authentication, data access, quiz generation, and reward operations. README capabilities help identify subsystems not fully represented in the sampled source; their exact internal wiring is therefore omitted where it is not evidenced.
Main entry points: main.tsx App routes · client.ts HTTP client · StudentLanding.tsx Student dashboard · ParentProgress.tsx Parent progress
Components 22
Web experience
- App routes
frontend/src/main.tsx - Sign in and signup
frontend/src/pages - Student dashboard
frontend/src/pages/StudentLanding.tsx - Book library
frontend/src/pages/library.tsx - Quiz taking
frontend/src/pages/Quiz.tsx - Quiz results
frontend/src/pages/QuizResults.tsx - Rewards and skins
frontend/src/pages/Rewards.tsx - Parent progress
frontend/src/pages/ParentProgress.tsx
API clients
- HTTP client
frontend/src/api/client.ts - Student API
frontend/src/api/students.ts - Parent API
frontend/src/api/parents.ts - Books API
frontend/src/api/books.ts - Quiz API
frontend/src/api/quiz.ts - Rewards API
frontend/src/api/rewards.ts
Backend service
- FastAPI app
backend/app/main.py - API routes
backend/app/api.py - Quiz generation and feedback
backend/app/quiz_llm.py - Database access
backend/app/db.py
Data and AI
- PostgreSQL
- OpenAI
Other components
- Student
- Parent or tutor
Connections 35
- Student → App routes: uses app
- Parent or tutor → App routes: uses app
- App routes → Sign in and signup: routes to
- App routes → Student dashboard: routes to
- App routes → Book library: routes to
- App routes → Quiz taking: routes to
- App routes → Quiz results: routes to
- App routes → Rewards and skins: routes to
- App routes → Parent progress: routes to
- Student dashboard → Student API: loads assignments
- Student dashboard → Books API: loads books
- Student dashboard → Rewards API: loads skin
- Student dashboard → Quiz API: requests quiz
- Parent progress → Parent API: loads children
- Parent progress → Student API: loads assignments
- Parent progress → Books API: loads books
- Parent progress → Rewards API: creates reward
- Sign in and signup → Student API: auth requests
- Sign in and signup → Parent API: auth requests
- Book library → Books API: loads books
- Quiz taking → Quiz API: submits answers
- Quiz results → Quiz API: loads results
- Rewards and skins → Rewards API: manages rewards
- Student API → HTTP client: sends requests
- Parent API → HTTP client: sends requests
- Books API → HTTP client: sends requests
- Quiz API → HTTP client: sends requests
- Rewards API → HTTP client: sends requests
- HTTP client → FastAPI app: HTTP requests
- FastAPI app → API routes: mounts router
- FastAPI app → Database access: initializes pool
- API routes → Database access: queries and updates
- API routes → Quiz generation and feedback: generates quiz
- Quiz generation and feedback → OpenAI: requests generation
- Database access → PostgreSQL: reads and writes