A full-stack To‑Do List Application built with the MERN stack (MongoDB, Express.js, React.js, Node.js) that allows users to register, log in, and manage their personal tasks securely with JWT authentication.
- User Registration & Login with JWT
- Protected Routes via Middleware
- Task CRUD Operations (Create, Read, Update, Delete)
- Clean UI built using React
- RESTful API integration via Axios
- MongoDB for persistent storage
mern-to-do-app/
├── client/ # Frontend (React)
│ ├── public/ # HTML & manifest
│ └── src/ # React source code
│ ├── components/ # Protected route components
│ ├── pages/ # Login, Register, Todo pages
│ └── services/ # Axios API wrapper
├── server/ # Backend (Express + MongoDB)
│ ├── middleware/ # JWT Auth middleware
│ ├── models/ # User and Task schemas
│ └── routes/ # Auth and Task routes
Frontend
- React.js
- Axios
- React Router
Backend
- Node.js
- Express.js
- MongoDB (Mongoose)
- JWT (JSON Web Token)
Follow these steps to run the project on your local machine:
- Fork this repository: sanketkanse999/mern-to-do-app
- Open your terminal and run:
git clone https://github.com/YOUR-USERNAME/mern-to-do-app.git
Replace
YOUR-USERNAME
with your GitHub username.
# Install frontend dependencies
cd mern-to-do-app/client
npm install
# Install backend dependencies
cd ../server
npm install
Create a .env
file inside the server/
directory with the following content:
MONGO_URI=your_mongo_connection_string
JWT_SECRET=your_jwt_secret_key
PORT=8000
Replace
your_mongo_connection_string
andyour_jwt_secret_key
with your own values.
cd mern-to-do-app/server
npm run dev
cd mern-to-do-app/client
npm start
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License.