MENU

GET IN TOUCH

manishprakkash@gmail.com
Back

Quizaroo

Year

2025

Tech & Technique

JavaScript, GitHub Pages, GitHub Actions, HTML5

Description

Problem: Developers learning JavaScript needed an engaging, self-paced quiz platform that covers the full JS spectrum — from basics to ES6+ advanced patterns — with timed pressure and instant feedback to reinforce learning.

Solution: Built Quizaroo, a modern interactive JavaScript quiz application using vanilla JavaScript, Tailwind CSS, and a clean modular architecture — featuring 20 curated questions across 4 difficulty levels, a 10-second countdown timer per question, instant answer feedback, and a full results breakdown with answer review.

Key Features:
  • 🎯 20 Levelled Questions: 4 difficulty tiers — Level 1: Basics, Level 2: Core JS, Level 3: ES6 Features, Level 4: Advanced JS — 5 questions each
  • ⏱️ 10-Second Timer: Per-question visual countdown with automatic progression on timeout
  • Instant Feedback: Correct/incorrect highlights immediately after each answer selection
  • 📊 Detailed Results: Full score breakdown with per-question answer review at the end
  • Accessibility: Semantic HTML, ARIA labels, keyboard navigation support, and color contrast compliance
  • 🚀 CI/CD Pipeline: GitHub Actions workflow for automated linting and deployment to GitHub Pages on push to main

Technical Implementation:
  • Built with zero external runtime dependencies — pure vanilla JavaScript using ES6+ features (classes, arrow functions, template literals, modules)
  • Followed modular architecture: app.js (controller), quiz.js (state & scoring), timer.js (reusable countdown), questions.js (data), ui.js (DOM rendering)
  • Applied Module, Observer, Singleton, and State Management patterns for clean separation of concerns
  • Styled with Tailwind CSS and custom CSS with dark mode via system preference detection
  • Used event delegation and efficient DOM manipulation for minimal memory footprint and optimized re-renders
  • Automated deployment via GitHub Actions to GitHub Pages with lint checks on every push

Impact: Delivered a fully accessible, zero-dependency JavaScript quiz app with CI/CD automation, modular architecture, and 4-tier difficulty progression — live on GitHub Pages and ready to extend with new question sets.

My Role

Frontend Developer
Designed and built the entire application from scratch:
  • 🏗️ Architecture: Designed the 5-module vanilla JS architecture with clear separation between state, timer, data, rendering, and app control
  • ⏱️ Timer Module: Built a reusable Observer-pattern timer with configurable duration, tick callbacks, and timeout handling
  • 🎯 Quiz Engine: Implemented state management for question progression, scoring, answer tracking, and results compilation
  • 🎨 UI Layer: Wrote all DOM rendering logic in ui.js using Tailwind CSS classes with smooth transitions, progress indicators, and responsive layout
  • Accessibility: Added semantic HTML, ARIA labels, focus indicators, keyboard navigation, and WCAG color contrast compliance
  • 🚀 CI/CD: Configured GitHub Actions workflow for automated lint checks and GitHub Pages deployment on every push to main
Quizaroo screenshot 1
Quizaroo screenshot 2
Quizaroo screenshot 3

M.A.N.I.S.H

manishprakkash@gmail.com