How techverse26/exam-question-generator works
EXAM MASTER is a school-oriented examination management app centered on building, storing, previewing, and exporting question papers. Users authenticate, select an institution, compose papers from question editors or the question bank, then preview and export them; separate capabilities include templates, answer keys, imports, analytics, team/academic management, AI generation, and subscriptions. The graph combines documented routes and README capabilities with sampled service and rendering relationships. Unsampled feature internals are represented by their exact existing paths; optional integrations are marked dashed where implementation wiring was not shown.
Main entry points: AppRoutes.jsx Routes and guards · index.jsx Paper builder · paperModel.js Paper document model · config.js Firebase services
Components 27
Application access
- Routes and guards
src/routes/AppRoutes.jsx - Authentication
src/pages/Authentication - User and institution state
src/store/authStore.js - Shared UI and language
src/components/common - Bengali translations
src/i18n/bn.js
Paper authoring
- Paper builder
src/pages/QuestionBuilder/index.jsx - Question editors
src/editors - Rich text editor
src/components/editor/RichTextEditor.jsx - Question bank
src/pages/QuestionBank/index.jsx - Templates and design
src/constants/templates.js - Question type registry
src/constants/questionTypes.js - Import and export screen
src/pages/ImportExport/index.jsx - AI question generation
src/pages/AI/index.jsx
Preview and export
- Paged paper preview
src/preview/PaperViewer.jsx - Paper document model
src/preview/paperModel.js - Paper rendering
src/preview/PaperDocument.jsx - Print and file export
src/export
Persistence and services
- Question data service
src/services/questionService.js - Paper data service
src/services/paperService.js - Firestore helpers
src/services/db.js - Firebase services
src/firebase/config.js
Institution operations
- AI function
functions/src/ai/generateQuestions.js - Institution and academic tools
src/pages/Institution - Analytics and notifications
src/pages/Analytics - Plans and payments
src/pages/Subscription/index.jsx - Payment function
functions/src/payments/sslcommerz.js
Other components
- Teacher or admin
Connections 30
- Teacher or admin → Routes and guards: opens app
src/routes/AppRoutes.jsx - Routes and guards → Authentication: routes to
src/routes/AppRoutes.jsx - Routes and guards → Paper builder: routes to
src/routes/AppRoutes.jsx - Routes and guards → Question bank: routes to
src/routes/AppRoutes.jsx - Routes and guards → Import and export screen: routes to
src/routes/AppRoutes.jsx - Routes and guards → AI question generation: routes to
src/routes/AppRoutes.jsx - User and institution state → Authentication: hydrates from
src/store/authStore.js - User and institution state → Firebase services: observes auth
src/store/authStore.js - Paper builder → Paper data service: loads and saves
src/pages/QuestionBuilder/index.jsx - Paper builder → Question editors: opens editors
src/pages/QuestionBuilder/index.jsx - Paper builder → Paged paper preview: shows preview
src/pages/QuestionBuilder/index.jsx - Paper builder → Question bank: picks questions
src/pages/QuestionBuilder/index.jsx - Question editors → Rich text editor: edits content
src/editors/MCQEditor/index.jsx - Question bank → Question data service: queries questions
- Question data service → Firestore helpers: uses helpers
src/services/questionService.js - Paper data service → Firestore helpers: uses helpers
src/services/paperService.js - Firestore helpers → Firebase services: uses Firestore
src/services/db.js - Paged paper preview → Paper rendering: renders pages
src/preview/PaperDocument.jsx - Paper rendering → Paper document model: builds model
src/preview/PaperDocument.jsx - Paper document model → Question type registry: uses question blocks
src/preview/paperModel.js - Paper document model → Templates and design: applies design
src/preview/paperModel.js - Paper builder → Templates and design: configures design
src/pages/QuestionBuilder/index.jsx - Import and export screen → Question data service: imports questions
src/pages/ImportExport/index.jsx - Import and export screen → Paper data service: exports papers
src/pages/ImportExport/index.jsx - Print and file export → Paper document model: formats paper
src/export/docxExport.js - AI question generation → AI function: requests generation
README.md - Plans and payments → Payment function: starts payment
README.md - Institution and academic tools → Firebase services: uses Firebase
README.md - Analytics and notifications → Firebase services: uses Firebase
README.md - Shared UI and language → Bengali translations: uses translations
src/components/common/Misc.jsx