Georgia Tech–branded quiz experience for the OMSCS CS6262 cohort, built with smooth motion and thoughtful accessibility.
- Topic filter that builds options directly from
meta.topicvalues inpublic/questions.json - Smart question count selector (5/10/20/33) with automatic 5-question sessions for topic-specific drills
- One-tap New Session reshuffle, animated question transitions, and keyboard shortcuts (1-9 + Enter)
- File:
public/questions.json - Each item:
id: string | numberquestionText: stringoptions: string[] (2+)correctAnswer: string[] (allows radio or checkbox questions)answerType:'radio' | 'checkbox'meta(optional):{ sourceFile?: string; pageNumber?: number; topic?: string; week?: number }
VS Code validates edits via public/questions.schema.json.
npm install
npm run devThen open http://localhost:5173
npm run build
npm run preview- Connect the repo in Netlify
- Build command:
npm run build - Publish directory:
dist - netlify.toml is included for SPA routing
- React + TypeScript + Vite
- Tailwind CSS
- Framer Motion
- Keyboard shortcuts: 1-9 to pick, Enter to confirm
- Accessible focus styles
- Mobile-friendly layout
- Fork or clone https://github.com/daveymason/net-sec-quiz
- Add or update question sets in
public/questions.json(schema above) and runnpm run build - Open a pull request so the cohort can benefit from the new material
A big thank you to the TA's who kept us sane with the projects.