2026Live
Quiz App
- JavaScript
- HTML
- CSS
- Vercel Functions
- Upstash Redis
- AES-256-GCM
- node:test
Overview
A quiz platform with 5 levels from primary school to master's, a software track, a daily question that is the same for everyone and questions generated from real data. Answers stay on the server, so it cannot be cheated from the browser.
01 · Problem
In browser quizzes the answers usually sit in the code or the network traffic, so anyone who opens the developer tools can read them. A fixed question list is also memorised after a few rounds.
02 · Solution
I moved the questions, timing and scoring into Vercel serverless functions. The round state lives in a single-use token encrypted with AES-256-GCM, and Upstash Redis handles replay protection and rate limiting. Templates that build questions from Wikidata and country data extend a bank of 796 questions.
03 · Outcome
Answers reach the browser only after a question is answered. The project has zero npm dependencies and 142 tests. Streaks, badges, a mistakes round and sharing make people come back and play again.