Task Manager is a full-stack web application that enables users to securely manage their daily tasks. Built with a React.js frontend, a Node.js + Express backend, and MongoDB Atlas as the cloud database, this app supports user registration, login with JWT authentication, and full CRUD operations on tasks.
- User Registration & Login: Secure authentication with JWT.
- Task Management: Create, read, update, and delete personal tasks.
- User-Specific Data: Each user accesses only their own tasks.
- Password Security: Passwords are hashed with bcrypt.
- Cloud Database: Data stored in MongoDB Atlas.
- Responsive UI: Built with React.js for smooth user experience.
- Backend: Node.js, Express.js
- Frontend: React.js
- Database: MongoDB Atlas
- Authentication: JWT, bcrypt
-
Clone the repository and navigate to the backend folder:
git clone https://github.com/Amritasri10/Task-Manager.git cd registration-form -
Install dependencies:
npm install -
Create a .env file in the backend folder with the following environment variables:
PORT=5001MONGO_URI=your_mongodb_atlas_connection_stringJWT_SECRET=your_jwt_secret_key -
Start the backend server:
npm start -
The API will be running at
http://localhost:5001
-
Navigate to the frontend directory:
cd ../frontend -
Install fronted dependencies:
npm install -
Start the React development server:
npm start -
The frontend will be available at
http://localhost:3000
-
POST /api/users/register– Register a new user -
POST /api/users/login– Login and receive JWT token
-
POST /api/tasks– Create a new task -
GET /api/tasks– Get all tasks of the logged-in user -
GET /api/tasks/:id– Get a task by its ID -
PUT /api/tasks/:id– Update a task by its ID -
DELETE /api/tasks/:id– Delete a task by its ID
-
On successful login, a JWT token is issued.
-
Include the JWT token in the Authorization header for task-related requests:
Authorization: Bearer <token>
This project is licensed under the MIT License - feel free to use it for personal or academic projects.