The Live Quiz application allows users to create and customize quizzes, and share them with multiple participants through a QR code or a shareable link. It features a secure login system with JWT authentication and email verification during signup. Additionally, the application supports a "Forgot Password" process that sends email templates to the user. The online quiz communication is made fast and efficient with socket.io.
- Express: Used as the HTTP server for handling requests
- MySQL: Serves as the database for storing quiz data and user information.
- Prisma: Used as the Object-Relational Mapping (ORM) tool to interact with the database.
- zod: Utilized as the validator to ensure data integrity.
- Redis: Employed for maintaining a blacklist of tokens for added security.
- React: Used as the User Interface (UI) library to build a dynamic and interactive front-end.
- PrimeReact: Used as a components library to enhance the UI with ready-to-use components.
- Email Templates: Created using vanilla HTML, CSS, and JavaScript to provide consistent and visually appealing email communications.