Can I code this? An AI Quiz Generator From My Notes
Sending your notes to an LLM API and asking for quiz questions back is a well-crafted, achievable prompt. Getting genuinely good, non-repetitive questions across many study sessions takes real prompt-tuning care.
Borderline
Effort: a weekendRunning cost: $0/mo to start
Why CanICodeThis says Borderline
Uploading text or a PDF and sending it to an LLM API with a 'generate quiz questions' prompt is a bounded, well-documented integration
Multiple-choice and short-answer question formats are both achievable with structured LLM output (asking for JSON back)
Storing generated quizzes and tracking your score over attempts is ordinary CRUD
The parts that'll cause problems
Getting consistently good, non-trivial questions (not just restating a sentence as a fill-in-the-blank) takes real prompt iteration
Avoiding repeated questions across multiple quiz generations from the same notes needs some deliberate variety-tracking
Grading short-answer responses for correctness (not just multiple choice) needs a second LLM call to evaluate the answer
How I'd build this
frontend
Next.js
database
Supabase
auth
Supabase Auth
hosting
Vercel
MVP scope
Upload text or a PDF of study notes
Generate a multiple-choice quiz via an LLM API call
Take the quiz and see your score
Save past quizzes and scores
Postpone to v2
Short-answer questions with LLM-graded responses
Spaced repetition scheduling for weak topics
Variety-tracking to avoid repeated questions
What it actually costs to build
AI agent — with a subscription (Claude Pro/Max, Cursor, etc.)
$0 marginal
AI agent — pay-per-use API, no subscription
$43–$86 one-time
Hosting, once it's running
$0/mo (free tier)
Domain name, if you want your own
~$12/yr
The build prompt
Build me a quiz generator: upload text or a PDF of study notes, send it to an LLM API with a prompt asking for structured JSON multiple-choice questions, and let me take the quiz and see my score. Save past quizzes and scores. SQLite or Supabase behind a small API, single-user login.