The Quiz Application is an interactive web-based platform that allows users to create and participate in quizzes without the need for authentication. Designed for easy access and engagement this application provides a user-friendly interface for quiz creation and participation. Users can quickly take quizzes on various topics test their knowledge and receive instant feedback on their performance. The application supports quiz creation enabling users to design custom quizzes with multiple-choice questions. Whether youβre a student looking to practice for exams or anyone interested in testing your knowledge this quiz application offers a simple and enjoyable way to learn and compete.
https://drive.google.com/drive/folders/1ccLil8q6YDeAA733JXq8zV6gGjMMzrM6?usp=sharing
Here're some of the project's best features:
- Quiz Creation: Users can create and customize quizzes with multiple-choice questions.
- Real-time Feedback: Instant results and feedback upon quiz completion.
- No Authentication Required: Users can take quizzes without needing to sign up or log in making it easy to start quizzing immediately.
- Responsive Design: Accessible on various devices ensuring a seamless experience on desktops tablets and mobile phones.
- User Authentication: Users can now register, log in, and manage their quizzes.
- JWT Authentication: Secure user authentication using JSON Web Tokens (JWT).
- User Profile: Users can view and manage their created quizzes.
- User Roles and Permissions: Implemented different user roles such as admin, teacher, and student.
- Role-Based Access Control: Restricted access to certain routes and actions based on user roles.
- Quiz Analytics and Reporting: Track and display quiz performance statistics for users, provide detailed reports on quiz attempts, scores, and time taken for each quiz, and allow users to view their quiz history and performance trends over time.
- Enhanced Quiz Creation and Customization: Allow users to add images, videos, and audio to quiz questions and answer options, implement different question types such as true/false, fill-in-the-blank, and matching, and add a feature to randomize question order and answer options for each quiz attempt.
- Register: Navigate to the registration page and create a new account by providing a username, email, and password.
- Login: After registering, log in using your email and password. A JWT token will be stored in your browser's local storage.
- Access Protected Routes: Once logged in, you can access protected routes such as creating quizzes and viewing your profile.
- User Roles: Admins can manage users and quizzes, teachers can create and manage quizzes, and students can take quizzes.
- Logout: To log out, simply clear the JWT token from your browser's local storage.
- Quiz Analytics: Navigate to the quiz analytics page to view your quiz performance statistics, detailed reports on quiz attempts, scores, and time taken for each quiz, and your quiz history and performance trends over time.
- Enhanced Quiz Creation: When creating a quiz, you can now add images, videos, and audio to quiz questions and answer options. You can also choose different question types such as true/false, fill-in-the-blank, and matching. Additionally, you can enable the option to randomize question order and answer options for each quiz attempt.
Technologies used in the project:
- Backend : Node.js and Express
- Frontend : React
- DataBase : MongoDB
- Styling : CSS
- Version Control : Git and GitHUB