Skip to content

A feature-rich ToDo app built with MERN stack and Tailwind CSS. Manage your tasks with features like adding, editing, deleting, marking as completed or incomplete, and filtering todos!

Notifications You must be signed in to change notification settings

shreyashkatkar07/ToDoBuddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

ToDoBuddy

ToDoBuddy is a full-stack web application built using the MERN stack and styled with Tailwind CSS to ensure responsiveness. It includes features for managing todos with validation, CRUD operations, and search functionality.

Features

  1. Add Todo:

    • Users can enter a title and description in respective input boxes and click on the "Add Todo" button to create a new todo item.
  2. Mark Todo as Complete:

    • Each todo item can be marked as complete.
  3. Edit Todo:

    • Users can edit the title and description of an existing todo item. Changes are reflected by clicking the "Update Todo" button.
  4. Mark as Incomplete:

    • Revert completed todos back to incomplete status.
  5. Delete Todo:

    • Users have the option to delete a particular todo item.
  6. Expand Todo Description:

    • If the description of a todo item exceeds a certain length, users can click to expand the description. This opens a modal dialog in the center of the screen displaying the complete title and description of the todo, with a close button to dismiss the modal.
  7. Filter Todos by Title:

    • Todos can be filtered by title using a search box, allowing users to quickly find specific todos.

Technologies Used

  • Frontend: Vite + React.js, Tailwind CSS
  • Backend: Node.js, Express.js, MongoDB (with Mongoose for ORM)
  • Validation: Zod for input validation
  • Data Fetching: Axios for fetching data from the backend API

Getting Started

To run ToDoBuddy locally:

  1. Clone this repository.
  2. Navigate to the project directory in your terminal: cd ToDoBuddy.

Setting Up Backend

  1. Open a new terminal window or tab.
  2. Navigate to the backend directory: cd backend.
  3. Install backend dependencies: npm install.
  4. Create a .env file in the backend directory and add the following:
    MONGO_URI=your_mongodb_uri
  5. Set up your MongoDB database and update the connection string (MONGO_URI).
  6. Start the backend server: node index.js.

Setting Up Frontend

  1. Open another new terminal window or tab (still in the project directory ToDoBuddy).

  2. Navigate to the frontend directory: cd frontend.

  3. Install frontend dependencies: npm install.

  4. Start the frontend development server: npm run dev.

  5. Open your browser and visit http://localhost:5173.

Contributing

Contributions are welcome! If you have any suggestions, improvements, or feature requests, feel free to open an issue or create a pull request.

About

A feature-rich ToDo app built with MERN stack and Tailwind CSS. Manage your tasks with features like adding, editing, deleting, marking as completed or incomplete, and filtering todos!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published