Skip to content

mdb1710/hiring-task

 
 

Repository files navigation

Home Assignment: Todo List Application

Objective

Develop a full stack Todo List application using the provided backend code for authentication. The application should allow users to create, read, update, and delete todo items.

Technologies

  • Backend: Express.js (authentication code provided)
  • Frontend: React.js (architecture is flexible)

Requirements

1. Authentication:

  • Implement user authentication using the provided backend code.
  • Ensure secure login and registration processes.
  • Use JWT or session-based authentication as per the provided backend architecture.

2. Todo List Features:

  • CRUD Operations:
    • Users should be able to create, read, update, and delete their todo items.
  • Todo Item Structure:
    • Each todo item should have at least the following properties:
      • Title (string)
      • Description (string)
      • Status (boolean: completed or not)
      • Due Date (date)
  • User-specific Todos:
    • Ensure that each user can only manage their own todo items.

3. Frontend Requirements:

  • Use React.js for the frontend.
  • Implement a clean and user-friendly interface.
  • Ensure responsiveness for different screen sizes.
  • Use state management (e.g., Context API, Redux) to manage application state.
  • Include validation for user inputs.

4. Additional Features (Optional):

  • Implement sorting and filtering options for the todo list.
  • Add user notifications for actions (e.g., todo added, updated, deleted).
  • Provide a dark mode toggle.

5. Testing:

  • Write unit tests for critical components and functions.
  • Ensure the application is free of critical bugs.

6. Documentation:

  • Provide clear documentation on how to set up and run the application.
  • Include comments in the code to explain key functionalities.

7. Submission Guidelines:

  • Submit the code repository (e.g., GitHub) with a clear commit history.
  • Include a README file with instructions on how to run the application.
  • Provide a demo link if hosted online.

Evaluation Criteria

  • Code quality and organization.
  • Functionality and adherence to requirements.
  • User interface design and user experience.
  • Testing coverage and documentation.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 94.0%
  • JavaScript 3.6%
  • CSS 2.4%