cd /news/ai-tools/i-built-an-ai-examiner-that-reads-my… · home › topics › ai-tools › article
[ARTICLE · art-145160] src=dev.to ↗ pub= topic=ai-tools verified=true sentiment=↑ positive

I built an AI examiner that reads my friend's notes — without the notes ever leaving their laptop

A developer built Notes vs. Me, an open-source study app that turns a student's own PDFs — syllabus, lecture slides and past papers — into an AI examiner that quizzes them and tracks which topics they repeatedly fail. The app runs its entire AI loop locally via Ollama with the gemma3:1b model, keeping notes on the user's laptop and working offline, with a fallback to Groq-hosted open weights for machines that cannot run a model. The developer reports that coaxing reliable JSON out of a 1B-parameter model required a worked example in the prompt plus a coercion layer, and the full AI stack fits in roughly 1GB of RAM.

by read2 min views1 publishedOct 5, 2026

Notes vs. Me is a study app with one job: take the PDFs a student already has — syllabus, lecture slides, past papers — and turn them

into an examiner that grills them, question after question, then shows exactly

which topics they keep failing.

I built it for a friend doing their undergrad who does the thing every student

does: reads the notes three times, feels prepared, walks into the exam, and

discovers that reading and being asked are completely different skills.

They had notes. They had questions at the back of the textbook. What they

didn't have was something that looked at their notes and asked them the

awkward follow-up.

And here's the constraint that shaped the whole build: their laptop is

where the notes live, where the revision happens, and — crucially — where the

notes should stay. No student wants their past papers uploaded to somebody's

cloud to "personalise their learning". So the default mode runs the entire AI

loop on their machine, and it all works offline.

ollama pull gemma3:1b, pip install -r requirements.txt, run — ten minutes

github.com/Priyanshujha1320/notes-vs-me — MIT licensed. FastAPI + SQLite + a single-file vanilla-JS frontend — no build step, nothing to trust. Six commits, one

weekend.

The pipeline is deliberately boring — boring is what survives exam week:

The fun part was the sampling loop. A static quiz generator gets boring in

about a day; a griller that remembers you failed "Calvin cycle" twice and

quietly schedules it for next round behaves like something that wants you to

pass. That loop is about ten lines around a weighted shuffle.

The not-fun part was coaxing a 1B-parameter model into reliable JSON. Small

open models copy your prompt's placeholder literally — mine happily returned

"options": ["A", "B", "C", "D"], letter options and all. The fix was a

worked example in the prompt (show, don't describe) plus a coercion layer

that trusts the model's actual answer type instead of fighting it. That's a

trade you make with small local models, and it's worth it: the whole AI stack

fits in about 1GB of RAM, so it runs on the kind of laptop students actually

own. If a machine can't run a model at all, there's a fallback to the same

open weights served by Groq — the app tells you, in plain words, which mode

you're in.

I'm handing the app to my friend this week with their own syllabus loaded —

watching a real student take the first grill is the whole point of this

build, and I'll update this section with what actually happens. My money is

on it finding the one section they skipped.

Try it on your own notes: github.com/Priyanshujha1320/notes-vs-me. If it exposes a topic you were sure you knew, that's the app working.

Built for the DEV Hacktoberfest Weekend Challenge: open source AI that solves a real problem for someone you love.

── more in #ai-tools 4 stories · sorted by recency
── more on @notes vs. me 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/i-built-an-ai-examin…] indexed:0 read:2min 2026-10-05 · —