Building neet-cbt - Replicating the NTA Exam Interface, Offline
22 lakh students sit NEET every year. In 2027 it goes computer-based. I built the exact NTA interface as a free offline PWA so nobody practises it cold.
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 jev-curate: Fast Synthetic Dataset Sifter in Rust
Filtering synthetic training data with TypeSafe AI Jev: streaming JSONL and Parquet rows through calibrated System One gates at 70ms latency with zero memory accumulation. � 5 min
systemsBuilding jev-git: Sub-Second Git Reflex Gate in Rust
Screening staged git diffs for leaked secrets, destructive payloads, and AI hallucinations in 80ms using TypeSafe AI Jev System One. � 4 min
systemsBuilding jev-scout: Zero-Hallucination Crate and Repo Scout
Preventing AI package hallucinations: discovering real crates and GitHub repositories using live registry APIs and TypeSafe Jev speculative fan-out scoring. � 4 min