React Native mobile app
MCQ Engine
An MCQ-based assessment app for creating, running and scoring timed exams on mobile.
React NativeTypeScriptNode.jsMongoDB
Overview
MCQ Engine lets educators create, run and score timed multiple-choice exams entirely from mobile.
Problem
Running reliable timed assessments for large groups on mobile is fiddly, with sync and scoring often breaking under load.
Solution
A React Native app with exam authoring, timed sessions, automatic scoring and result summaries, backed by a resilient sync layer.
Architecture
React Native client with a Node.js API; exams and submissions sync to the backend, with local buffering to survive flaky connectivity.
Database Design
Collections for exams, questions, sessions and submissions, with per-session answer documents to support resumable attempts.
API Design
Endpoints for exam CRUD, session start/finish and submission scoring, with idempotent submit handling.
Results
- Ran smoothly on the first real exam and every one since
- Automatic scoring removed manual grading effort
- Reliable timed sessions for large groups
Lessons Learned
- Idempotent submissions prevented double-scoring on retries
- Local buffering kept the exam usable on weak networks