live web app / llm in production
UPSC Learning
after you click Generate
the app checks each quiz before it saves anything.
- 01Ask for typed output
Gemini gets the subject mix, question style, date range, and current-affairs ratio. It returns a typed question payload.
- 02Drop bad questions
Schema checks catch broken options and missing fields. UPSC-specific checks reject formats that do not make sense for the exam.
- 03Remove repeats
Topic signatures find duplicates inside the batch and against questions already saved in the database.
- 04Fill the gaps
A repair pass replaces rejected questions and can fact-check weak answers against grounded context.
- 05Keep a record
The metrics page stores the model, parse path, retries, validation failures, duplicate count, tokens, and timings.
i built this because generated practice questions are usually hard to trust. a large run may create more than 100 questions, reject weak ones, replace the gaps, and save enough detail to explain what happened when a batch goes weird. the same app handles study sessions, history, stats, scheduled sets, cancellation, and official previous-year papers.
- Next.js 15
- React 19
- Hono
- SQLite
- Vertex Gemini