How abhijith1622/quizzo works
PulseQuiz lets creators author and manage quizzes, host live sessions, and review results; players join by code or play solo. The graph follows the evidenced client/API, game-session, and persistence responsibilities. The README documents AI quiz generation, but the file tree contains no AI implementation file, so its route is represented only at the existing routes-directory level. Some route internals and client pages were not sampled; links without source evidence are omitted.
Main entry points: api.ts REST client · server.ts HTTP server · App.tsx App routing · db.ts In-memory document store
Components 26
Web application
- App routing
src/App.tsx - Sign-in and session
src/contexts/AuthContext.tsx - Quiz editor
src/pages/dashboard/QuizEditorPage.tsx - Quiz dashboard
src/pages/dashboard/QuizzesPage.tsx - Template browsing
src/pages/public/TemplatesPage.tsx
API and identity
- REST client
src/services/api.ts - HTTP server
server.ts - Authentication routes
server/routes/authRoutes.ts - Quiz routes
server/routes/quizRoutes.ts - Game routes
server/routes/gameRoutes.ts - Template routes
server/routes/templateRoutes.ts - AI quiz generation
server/routes
Live gameplay
- Host control room
src/pages/host/HostGamePage.tsx - Join game
src/pages/public/JoinGamePage.tsx - Player gameplay
src/pages/player/PlayerGamePage.tsx - Solo play
src/pages/player/SoloPlayPage.tsx - Socket client
src/services/socket.ts - Authoritative game engine
server/sockets/gameSocket.ts
Persistence and analytics
- In-memory document store
server/db.ts - MongoDB persistence
server/mongoService.ts - Analytics dashboard
src/pages/dashboard/AnalyticsPage.tsx - Analytics and exports
server/routes/analyticsRoutes.ts - Scorecard export
server/services/analyticsExportService.ts - Quiz history
src/pages/dashboard/QuizHistoryPage.tsx
Other components
- Quiz creator
- Game player
Connections 33
- Quiz creator → App routing: uses
- Game player → App routing: uses
- App routing → Quiz editor: routes to
src/App.tsx - App routing → Host control room: routes to
src/App.tsx - App routing → Player gameplay: routes to
src/App.tsx - App routing → Solo play: routes to
src/App.tsx - App routing → Join game: routes to
src/App.tsx - Sign-in and session → REST client: calls
src/contexts/AuthContext.tsx - Quiz editor → REST client: calls
src/pages/dashboard/QuizEditorPage.tsx - Quiz dashboard → REST client: calls
- Template browsing → REST client: calls
- Host control room → REST client: calls
src/pages/host/HostGamePage.tsx - Host control room → Socket client: uses
src/pages/host/HostGamePage.tsx - Player gameplay → Socket client: uses
src/pages/player/PlayerGamePage.tsx - Solo play → REST client: calls
src/pages/player/SoloPlayPage.tsx - REST client → HTTP server: requests
- HTTP server → Authentication routes: mounts
server.ts - HTTP server → Quiz routes: mounts
server.ts - HTTP server → Game routes: mounts
server.ts - HTTP server → Template routes: mounts
server.ts - HTTP server → Analytics and exports: mounts
server.ts - HTTP server → Authoritative game engine: initializes
server.ts - Authentication routes → In-memory document store: reads and writes
server/routes/authRoutes.ts - Quiz routes → In-memory document store: reads and writes
server/routes/quizRoutes.ts - Quiz routes → MongoDB persistence: persists quizzes
server/routes/quizRoutes.ts - Game routes → In-memory document store: reads and writes
server/routes/gameRoutes.ts - Authoritative game engine → In-memory document store: updates state
server/sockets/gameSocket.ts - MongoDB persistence → In-memory document store: loads and persists
server/mongoService.ts - Analytics dashboard → REST client: requests data
src/pages/dashboard/AnalyticsPage.tsx - Analytics and exports → In-memory document store: reads results
server/routes/analyticsRoutes.ts - Analytics and exports → Scorecard export: delegates exports
server/routes/analyticsRoutes.ts - Quiz history → REST client: requests history
src/pages/dashboard/QuizHistoryPage.tsx - AI quiz generation → Quiz creator: generates quizzes