Assignment 4 - Full-Stack Application
Assignment 4 - Full-Stack Application
Instructions
In this assignment, you are required to build a full-stack quiz application using Node.js for
the backend and React with Redux for the frontend. The backend will use Express and
MongoDB to handle data storage and API endpoints, while the frontend will provide an
interactive interface for users to take quizzes.
Assignment Overview
At the end of this assignment, you should have completed the following:
The backend handles the CRUD operations for quizzes and questions
The frontend allows user login successfully before fetching and displaying quizzes
using Redux for state management.
Assignment Requirements
1. Backend
Routes: Create API endpoints for creating, reading, updating, and deleting quizzes
and questions.
Validation and Error Handling: Implement validation and error handling for API
requests.
2. Frontend
1
Authentication: Login, logout and signup user account. If user is admin, user can
CRUD question and other ones can only take quizzes
User Interaction: Allow users to select options for questions and submit answers.
Review criteria
Your assignment will be graded on the basis of the following review criteria:
Have a full-stack Node.js quiz application with an Express backend and a React
frontend.
The backend handles the CRUD operations for quizzes and questions, while the
frontend allows user login successfully before fetching and displaying quizzes with
Redux architecture. This is a basic setup that can be extended with more features
such as user authentication, score tracking, and more.
2
Click and do Quiz
Finish quiz
3
Login successfully with user that is an admin
4
5
6
7