A full-stack web application for managing tasks, built with the MERN stack (MongoDB, Express, React, Node.js).
- Create, read, update, and delete tasks
- Task prioritization (low, medium, high)
- Task status tracking (pending, in-progress, completed)
- Responsive design with Bootstrap
- State management with Redux
- RESTful API with Express
- MongoDB database integration
- React 18
- Redux Toolkit
- React Router DOM
- Bootstrap 5
- Axios
- Vite
- Node.js
- Express
- MongoDB
- Mongoose
- CORS
- dotenv
task-management-system/ ├── client/ # Frontend React application │ ├── src/ │ │ ├── components/ # React components │ │ ├── redux/ # Redux store and slices │ │ ├── App.jsx # Main application component │ │ └── main.jsx # Application entry point │ └── package.json │ └── server/ # Backend Node.js application ├── models/ # MongoDB models ├── routes/ # API routes ├── server.js # Express server setup └── package.json
- Node.js (v14 or higher)
- MongoDB (local installation or MongoDB Atlas account)
- Clone the repository:
git clone <repository-url>
cd task-management-system- Install frontend dependencies:
cd client
npm install- Install backend dependencies:
cd ../server
npm install- Create a
.envfile in the server directory: PORT=5000 MONGODB_URI=mongodb://127.0.0.1:27017/task-management
- Start the backend server:
cd server
npm run dev- In a new terminal, start the frontend:
cd client
npm run devThe application will be available at:
- Frontend: http://localhost:5173
- Backend API: http://localhost:5000
- GET
/api/tasks- Get all tasks - GET
/api/tasks/:id- Get a single task - POST
/api/tasks- Create a new task - PATCH
/api/tasks/:id- Update a task - DELETE
/api/tasks/:id- Delete a task
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License.