An engaging web-based math quiz game built with vanilla JavaScript that challenges players with random arithmetic operations. Features progressive scoring, local progress saving, and responsive design for an optimal learning experience.
- ๐ฒ Random question generation for four basic operations (addition, subtraction, multiplication, division)
- ๐ Progressive scoring system (+3 for correct answers, -1 for incorrect)
- ๐พ Local storage integration for saving progress
- ๐ฏ Three attempts per question before showing the correct answer
- ๐ฑ Fully responsive design across all devices
- ๐ Interactive toast notifications for user feedback
- ๐จ Modern UI with smooth animations and transitions
Experience the game live: Math Quiz Game
- HTML5
- CSS3 with Tailwind CSS
- Vanilla JavaScript
- Toastify JS Library
- Local Storage API
During the development of this project, I gained valuable experience in:
- Generating random numbers within specific ranges
- Understanding CSS Sticky Position property
- Working with the
animationend
event - Browser reflow optimization techniques
- Local Storage API implementation
- Toast notifications using Toastify JS
- Error handling and user feedback
- Tailwind CSS @layer directives
- Choose to save your score locally, through the browser prompt
- Start the game by answering the initial question
- Each correct answer adds 3 points to your score
- Each incorrect answer deducts 1 point
- You get 3 attempts per question before the correct answer is shown
- Continue your progress across sessions, using the local storage feature
- Type your answer in the input field
- Press Enter or click Submit to check your answer
- Use the local storage prompt to manage your progress:
- Type 'Yes' to save progress
- Type 'No' to play without saving
- Type 'Delete' to remove saved progress
- Click 'Cancel' if progress is already saved
- Clone the repository:
git clone https://github.com/VinayNoogler000/Math-Quiz-Game.git
- Navigate to the project directory:
cd Math-Quiz-Game
- Install
tailwindcss
via npm:
npm install -D tailwindcss
- Start the Tailwind's build process to Build the CSS file:
npx tailwindcss -i src/style.css -o dist/output.css --watch
- Open
index.html
in your preferred browser & see the project working live.
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create your feature branch:
git checkout -b feature/AmazingFeature
- Commit your changes:
git commit -m 'Add some AmazingFeature'
- Push to the branch:
git push origin feature/AmazingFeature
- Open a Pull Request
Found a bug? Please open an issue with a clear description and steps to reproduce. Your input helps make this project better for everyone!
- Add difficulty levels
- Implement a timer feature
- Add sound effects
- Create a leaderboard
- Add more mathematical operations
- Implement a practice mode
- Tailwind CSS for the utility-first CSS framework
- Toastify JS for the notification system
This project is licensed under the MIT License - see the LICENSE.md file for details.
Vinay Tambey
- Email: Send Email to Vinay
- LinkedIn: Vinay Tambey
- GitHub: @VinayNoogler000
- Twitter/X: @VinayNoogler000
Project Link: GitHub Repo
Let's connect and collaborate! I'm always open to new opportunities in frontend web development.
This project is, currently, not in development by the Owner, but we're always looking to add new features and improvements!
Give a โญ๏ธ if this project helped you!
Made with โค๏ธ by Vinay Tambey