A modern full-stack task management application that helps users organize, prioritize, and manage daily tasks with a clean interface and secure authentication.
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.
- Secure user registration and login
- Search tasks instantly by title
- JWT-based authentication
- HTTP-only cookie authentication
- Protected routes
- Create new tasks
- Edit existing tasks
- Delete tasks
- Mark tasks as Completed or Pending
- Organize tasks by priority
- Clean and responsive user interface
- Real-time task search
- Priority-wise task organization
- Instant UI updates after task operations
- React
- Vite
- React Router DOM
- CSS3
- Node.js
- Express.js
- MongoDB Atlas
- Mongoose
- JSON Web Token (JWT)
- Cookie Parser
- CORS
- Render (Frontend)
- Render (Backend)
- MongoDB Atlas
TaskPulse/
│
├── Backend/
│ ├── config/
│ ├── controllers/
│ ├── middleware/
│ ├── models/
│ ├── routes/
│ ├── utils/
│ ├── server.js
│ └── package.json
│
├── Frontend/
│ ├── public/
│ ├── src/
│ ├── package.json
│ └── vite.config.js
│
└── README.md
git clone <repository-url>
cd TaskPulsecd Backend
npm install
npm startThe backend will start on the configured port.
cd Frontend
npm install
npm run devThe frontend will be available at:
http://localhost:5173
| Method | Endpoint | Description |
|---|---|---|
| POST | /users/register |
Register a new user |
| POST | /users/login |
Login user |
| POST | /users/logout |
Logout the current user |
| 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 |
TaskPulse uses JWT (JSON Web Tokens) stored in HTTP-only cookies to authenticate users and secure protected routes.
- 📅 Due dates and reminders
- 📊 Task analytics
- 📌 Drag-and-drop task organization
- 📱 Improved mobile experience
Monia Voona
- GitHub: @Monia1801
- LinkedIn: @monia-voona
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