Skip to content

Latest commit

 

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

🚀 TaskPulse

A modern full-stack task management application that helps users organize, prioritize, and manage daily tasks with a clean interface and secure authentication.


📖 Overview

TaskPulse is designed to simplify task management by allowing users to create, organize, search, and track tasks based on their priority and completion status. It features secure authentication using JWT and provides an intuitive dashboard for efficient productivity.


✨ Features

Authentication

  • Secure user registration and login
  • Search tasks instantly by title
  • JWT-based authentication
  • HTTP-only cookie authentication
  • Protected routes

Task Management

  • Create new tasks
  • Edit existing tasks
  • Delete tasks
  • Mark tasks as Completed or Pending
  • Organize tasks by priority

Dashboard

  • Clean and responsive user interface
  • Real-time task search
  • Priority-wise task organization
  • Instant UI updates after task operations

🛠 Tech Stack

Frontend

  • React
  • Vite
  • React Router DOM
  • CSS3

Backend

  • Node.js
  • Express.js
  • MongoDB Atlas
  • Mongoose
  • JSON Web Token (JWT)
  • Cookie Parser
  • CORS

Deployment

  • Render (Frontend)
  • Render (Backend)
  • MongoDB Atlas

📂 Project Structure

TaskPulse/
│
├── Backend/
│   ├── config/
│   ├── controllers/
│   ├── middleware/
│   ├── models/
│   ├── routes/
│   ├── utils/
│   ├── server.js
│   └── package.json
│
├── Frontend/
│   ├── public/
│   ├── src/
│   ├── package.json
│   └── vite.config.js
│
└── README.md

🚀 Getting Started

1. Clone the Repository

git clone <repository-url>
cd TaskPulse

2. Backend Setup

cd Backend
npm install
npm start

The backend will start on the configured port.


3. Frontend Setup

cd Frontend
npm install
npm run dev

The frontend will be available at:

http://localhost:5173

🌐 API Endpoints

Authentication

Method Endpoint Description
POST /users/register Register a new user
POST /users/login Login user
POST /users/logout Logout the current user

Tasks

Method Endpoint Description
GET /tasks Retrieve all tasks
POST /tasks Create a new task
PUT /tasks/:id Update an existing task
DELETE /tasks/:id Delete a task

🔒 Authentication

TaskPulse uses JWT (JSON Web Tokens) stored in HTTP-only cookies to authenticate users and secure protected routes.


🎯 Future Improvements

  • 📅 Due dates and reminders
  • 📊 Task analytics
  • 📌 Drag-and-drop task organization
  • 📱 Improved mobile experience

👨‍💻 Author

Monia Voona


⭐ Support

If you found this project useful, consider giving it a ⭐ Star on GitHub. It helps others discover the project and motivates future improvements.


Made with ❤️ using React, Node.js, Express.js, and MongoDB

About

TaskPulse is a full-stack task management app that helps users create, organize, and track tasks efficiently with secure login and a simple, responsive dashboard.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages