Building neet-cbt - Replicating the NTA Exam Interface, Offline
NEET UG goes computer-based in 2027. 22 lakh students sit it every year. The exam interface decides how a student performs as much as the syllabus does — unfamiliar layout, a question palette, mark-for-review, a countdown you can't pause. Practising on paper trains none of it.
I built neet-cbt: a free offline-first PWA that replicates the NTA computer-based test interface.
What it does
The real NTA UI, cloned. The 5-colour question palette on the side, numbered and colour-coded — answered, not-visited, marked-for-review. Save & Next, Clear Response, Mark for Review, and the 2-step submit dialog so nobody auto-submits by accident. Timer top-centre, and it survives phone sleep — refresh and the exam resumes exactly where you left it.
The full mock matches the real exam: 200 questions, 180 attempted, +4/-1, 720 max, 3h20m. There's a custom mode too — pick a subject and question count, timer on or off.
The offline part
Question banks are plain JSON files. Import one, it's stored on the device. The whole exam runs from local storage — no network call after first load. Built-in bank has 64 sample questions, 16 per subject, chapter-tagged, all flagged SAMPLE so nobody mistakes them for the real thing.
Bring your own PYQs: export them to the documented JSON schema, import in-app, run unlimited custom tests. Or generate a bank with AI — the master prompt lives in the app, you paste it into Claude or Gemini, save the JSON, import it.
Why not a normal app
The coaching-app version exists and charges per test. That's the wrong model — the interface is public knowledge, the papers are free, and a kid in a village with one phone should get the same practise as anyone else. So: no accounts, no tracking, no server data. Everything stays on the device. Result screen exports each finished test as JSON so your history survives a reinstall.
What's next
Timer profiles that match the final 2027 pattern once NTA publishes the exact format. Better question-type coverage — assertion-reason, statement-based, the kinds NEET actually asks. The built-in bank stays sample-only until answers are verified against NCERT.
22 lakh students sit NEET every year. The paper is free to download. The interface training shouldn't be paywalled.
More Essays
Building c2proof: C to Rust Migration with Verification
A verifier-first c2rust wrapper. Give it a flat C repo, and it outputs a compiling Rust port PR alongside a mathematical proof artifact.
systemsBuilding code2paper: Turn Any Codebase into an Academic Paper
A stdlib Python CLI and Claude Agent Skill to convert an entire codebase into a readable academic paper in Typst, LaTeX, PDF, and HTML.
projectsBuilding Kharcha: India's Zero-Friction UPI Expense Tracker
How I built a native Android expense tracker that automatically captures UPI payments from GPay, PhonePe, and Paytm with zero AI and 100% data ownership.