A full-stack Task Manager application built using the MERN stack that allows users to manage tasks across different stages: Todo, In Progress, and Done.
Frontend: https://supertaskx.vercel.app
Backend: https://github.com/prasad-patil22/taskflow
[Add GitHub Repository Link]
- User Registration
- User Login
- JWT Authentication
- Protected Routes
- User Profile
- Update Profile
- Change Password
- Secure Password Hashing using bcrypt
-
Create Task
-
View Tasks
-
Update Task
-
Delete Task
-
Task Status Management
- Todo
- In Progress
- Done
- User-wise task separation
- Responsive UI
- Loading States
- Error Handling
- Protected APIs
- React.js
- React Router DOM
- Axios
- Tailwind CSS
- Node.js
- Express.js
- MongoDB Atlas
- Mongoose
- JSON Web Token (JWT)
- bcryptjs
- Frontend: Vercel
- Backend: Render
src
├── pages
│ ├── Login.jsx
│ ├── Register.jsx
│ ├── Profile.jsx
│ └── TaskControl.jsx
├── components
├── App.jsx
└── main.jsx
server
├── controllers
│ ├── UserController.js
│ └── TaskController.js
├── middleware
│ └── Auth.js
├── models
│ ├── User.js
│ └── Task.js
├── routes
│ ├── UserRouter.js
│ └── TaskRouter.js
└── server.js
POST /api/users/register
POST /api/users/login
GET /api/users/profile
PUT /api/users/profile
PUT /api/users/change-passwordPOST /api/tasks/create
GET /api/tasks
GET /api/tasks/:id
PUT /api/tasks/:id
DELETE /api/tasks/:idCreate a .env file in the backend root.
PORT=8000
MONGODB_URL=YOUR_MONGODB_CONNECTION_STRING
JWT_SECRET=YOUR_SECRET_KEYgit clone <repository-url>cd client
npm install
npm run devcd server
npm install
npm start- Each user can access only their own tasks.
- Email addresses are unique.
- Task stages are limited to Todo, In Progress, and Done.
- Authentication is required for all task-related operations.
JWT was used because it provides a simple and scalable authentication mechanism for frontend-backend communication.
Passwords are hashed using bcrypt before storing them in the database.
MongoDB was selected because it offers flexible document storage and integrates well with Node.js applications.
RESTful APIs were implemented to keep the architecture simple and maintainable.
AI tools were used for implementation guidance, code review, debugging assistance, and development support.
As required by the assignment guidelines, a backend implementation has been included along with frontend deployment.
Prasad