Welcome to Quiztopia! This is a personal web app project built using React and Vite, designed to offer interactive quizzes on more than twenty various topics over three levels of diffiulty. The app features a user-friendly interface powered by Material UI for styling and CSS3 for additional design elements. Axios is used to make API calls to fetch quiz questions and data, while Google Firebase is storing your results to display in the leaderboard!
- Choose quiz categories and difficulty levels.
- Answer multiple-choice questions with instant feedback.
- Track your score as you progress through the quiz.
- Enjoy a responsive and visually appealing design.
- Responsive design for errors
- Light/Dark mode switch
- Clone the repository:
git clone https://github.com/alessandro-001/React-Quiz-Application.git
- Navigate to the project directory:
cd quiz-app
- Install dependencies using npm or yarn:
npm install
- Run the development server:
npm run dev
- React: A JavaScript library for building user interfaces.
- Vite: A fast build tool that optimizes your frontend development workflow.
- Material UI: A popular React UI framework that provides pre-styled components and styles.
- Axios: A promise-based HTTP client for making API calls.
- CSS3: Used for additional styling and design enhancements.
- Firebase: As backend to store your result to display on the leaderboard.
- Launch the app and select a quiz category and difficulty level.
- Click the "Start Quiz" button to begin the quiz.
- Answer the multiple-choice questions by clicking on the provided options.
- Receive immediate feedback on your answers.
- View your score at the end of the quiz.
Play the hosted version here: https://quiztopia-webapp.netlify.app/
- The quiz questions and data are sourced from API https://opentdb.com/api_config.php.
- The icons used in the footer are from https://devicon.dev/
- The Tab icon is from Quiz icons created by Freepik - Flaticon
- This app was inspired by the desire to improve my front end skills and to create an engaging and educational platform for users to test their knowledge.
Please visit my web portfolio, Linkedin or GitHub profile by clicking on my name at bottom page or directly here: https://alessandrofrondini.netlify.app/ and don't be shy to send me suggestions, always looking forward to improve myself!
Contributions are welcome! Feel free to submit issues or pull requests.