Inspiration

What inspired me to make this app is that there isn’t a single platform where anyone can create a quiz and anyone can attempt a quiz. An app like this can be useful for both teachers and students.

What it does

In this app, one can create a quiz by adding as many questions as they want along with the correct answers, which will help in the evaluation later. At the end, a unique code will be generated. Using this unique code, anyone can attempt that particular quiz. The results will be displayed on a leaderboard, sorted in decreasing order of marks.

How we built it

Frontend: I used HTML, CSS, and JavaScript for designing the user interface and adding interactivity to the application. Backend: I used Node.js with Express to handle server-side logic and create API endpoints for communication between the frontend and the database. Database: I used MongoDB to store user data, quiz questions, and leaderboard scores securely and efficiently. Deployment: Currently, the project is set up in a local development environment, but it is designed to be easily deployed on cloud platforms.

Challenges we ran into

Implementing user authentication and maintaining session management was complex. Ensuring secure login, logout, and token storage in localStorage required careful consideration of security practices. Implementing the dynamic addition of questions in the quiz creation form was challenging. Ensuring that each question, along with its options, was correctly saved and displayed required careful handling of DOM manipulation and data storage. Ensuring smooth navigation between pages, such as from the dashboard to quiz creation and attempt pages, required proper routing logic on both the frontend and backend.

Accomplishments that we're proud of

I'm proud that I built the Quizzzzarria project entirely on my own, from frontend design to backend logic. I successfully implemented dynamic quiz creation and an interactive leaderboard system. I overcame challenges in user authentication and data management, enhancing my full-stack development skills. Completing this project boosted my confidence in building complete web applications independently.

What we learned

Through this project, I learned how to integrate frontend and backend seamlessly using HTML, CSS, JavaScript, Node.js, and Express. I gained hands-on experience with MongoDB for data storage and understood how to manage user authentication and dynamic content rendering. Additionally, I improved my problem-solving skills by tackling challenges in routing and state management. Overall, this project enhanced my full-stack development knowledge and boosted my confidence in building interactive web applications.

What's next for Quizzzarria

Next, I plan to enhance Quizzzarria by adding features like timed quizzes, quiz analytics for creators, and detailed score breakdowns for users. I also aim to improve the user interface for a more interactive experience. Additionally, I’m considering deploying the project on a cloud platform for broader accessibility. Integrating features like real-time leaderboards and quiz sharing are also on the roadmap to make Quizzzarria more engaging and versatile.

Share this project:

Updates