MERN Stack Developer Assessment-3
MERN Stack Developer Assessment-3
Overview:
Build a task management application with authentication where users can create, update, delete,
and view tasks. The application should use MongoDB for data storage, Node.js and Express.js
for the backend, React.js for the frontend, and state management libraries like Redux or React
Context API.
Requirements:
1. Authentication:
o Users should be able to sign up with a unique username and password.
o Users should be able to log in and log out securely.
2. Task Management:
o Authenticated users should be able to create tasks with a title, description, and due
date.
o Users should be able to view a list of their tasks.
o Users should be able to update tasks (mark as completed, edit title/description/due
date).
o Users should be able to delete tasks.
3. Database:
o Use MongoDB for storing user information and tasks.
4. Backend:
o Use Node.js and Express.js to build the server-side logic.
o Implement RESTful APIs for CRUD operations on tasks.
5. Frontend:
o Use React.js for building the frontend.
o Implement components for displaying tasks, creating/editing tasks, and
authentication forms.
o Use React Router for navigation between different pages (e.g., login, signup,
dashboard).
6. State Management:
o Utilize state management libraries like Redux or React Context API to manage
application state.
7. Styling:
o Style the application using CSS or a CSS preprocessor (e.g., SCSS).
o Implement responsive design.
8. Bonus (If Time Permits):
o Implement real-time updates using web sockets or a library like Socket.io.
o Add search/filter functionality for tasks.
o Implement pagination for tasks.
o Write unit tests for backend APIs and frontend components.
Evaluation Criteria:
• Functionality: Does the application meet the specified requirements?
• Code Quality: Is the code well-structured, readable, and maintainable?
• UI/UX: Is the user interface intuitive and visually appealing?
• Error Handling: Does the application handle errors gracefully?
• Security: Is user authentication implemented securely?
• Bonus Features: Are any of the bonus features implemented?
Submission:
• Submit your project code along with any necessary setup instructions and documentation
through https://link.krite.sh/mern-stack-developer by February 25th, 11:59 PM
• If selected for further consideration, you will receive a response within 2-3 working days.
If not, it may take longer due to the volume of submissions.
Note:
Plagiarism or unauthorized use of code from external sources will result in disqualification.
Candidates are expected to demonstrate their own skills and understanding of frontend
development concepts.