A real-time Task Management Application where users can add, edit, delete, reorder, and move tasks across three categories: To-Do, In Progress, and Done. The app ensures instant updates using WebSockets and MongoDB Change Streams.
- 🔐 Authentication: Firebase Google Sign-In.
- ✅ Task Management: Create, edit, delete, and reorder tasks.
- 📂 Drag and Drop: Move tasks between categories.
- 💾 Real-time Sync: Uses WebSockets for live updates.
- 🎨 Modern UI: Built with Vite.js, Tailwind CSS, and React.
- 📱 Fully Responsive: Works smoothly on desktop & mobile.
- ⚛️ React.js (with Vite.js)
- 🎨 Tailwind CSS + DaisyUI
- 🏗️ @dnd-kit/core (Drag & Drop)
- 🔥 Firebase Authentication
- 🟢 Node.js & Express.js
- 🍃 MongoDB (with Change Streams)
- ⚡ WebSockets (Socket.io)
- Clone the Repository:
git clone https://github.com/Shahriarkawsik/Task-Management.git cd Task-Management - Frontend Setup:
cd client npm install npm run dev - Backend Setup:
cd server npm install npm start - Set Up Environment Variables:
- Create a
.envfile in the backend folder. - Add your MongoDB URI and Firebase API credentials.
- Create a
| Method | Endpoint | Description |
|---|---|---|
| POST | /tasks |
Add a new task |
| GET | /tasks |
Retrieve all tasks |
| PUT | /tasks/:id |
Update task details |
| DELETE | /tasks/:id |
Delete a task |
/task-management-app
├── client (Frontend - React.js)
│ ├── public
│ ├── src
│ │ ├── components
│ │ ├── context
│ │ ├── hooks
│ │ ├── Layout
│ │ ├── pages
│ │ ├── styles
│ ├── .env
│ ├── vite.config.js
│ ├── package.json
│
├── server (Backend - Node.js & Express.js)
│ ├── routes
│ ├── models
│ ├── controllers
│ ├── config
│ ├── .env
│ ├── server.js
│ ├── package.json
│
├── README.md
- 🌑 Dark Mode toggle.
- 📅 Task Due Dates with color indicators.
- 📊 Activity Log for tracking changes.
💻 Developed by: Md. Shahriar Kabir 🚀