A full-stack MERN Notes application that allows users to create, view, edit, delete, and search notes. The application is built with React, Node.js, Express, and MongoDB and is deployed using Vercel (frontend) and Render (backend).
- Frontend:
https://notes-web-app-nine.vercel.app/ - Backend API:
https://notes-web-app-dkev.onrender.com
- Create new notes
- View all notes
- Edit existing notes
- Delete notes
- Search notes instantly
- Responsive UI
- RESTful API
- MongoDB database integration
- Environment variable configuration
- Fully deployed application
- React
- Vite
- Tailwind CSS
- Axios
- Node.js
- Express.js
- MongoDB
- Mongoose
- Vercel (Frontend)
- Render (Backend)
notes-web-app/
│
├── client/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── services/
│ │ ├── App.jsx
│ │ └── main.jsx
│ │
│ └── package.json
│
├── server/
│ ├── config/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── app.js
│ ├── server.js
│ └── package.json
│
└── README.md
git clone https://github.com/jdcodebase/notes-web-app.gitMove into the project directory:
cd notes-web-appNavigate to the server folder:
cd serverInstall dependencies:
npm installCreate a .env file:
PORT=8000
MONGODB_URI=your_mongodb_connection_string
CLIENT_URL=http://localhost:5173Start the backend server:
npm run devOpen a new terminal and navigate to the client folder:
cd clientInstall dependencies:
npm installCreate a .env file:
VITE_API_URL=http://localhost:5000/apiStart the frontend:
npm run dev| Method | Endpoint | Description |
|---|---|---|
| GET | /api/notes |
Get all notes |
| POST | /api/notes |
Create a note |
| PUT | /api/notes/:id |
Update a note |
| DELETE | /api/notes/:id |
Delete a note |
- User authentication (JWT)
- Pin notes
- Categories/Tags
- Dark mode
- Archive notes
- Toast notifications
- Pagination
- Rich text editor
During this project, I gained practical experience with:
- Building REST APIs using Express.js
- MongoDB CRUD operations with Mongoose
- Connecting React to a backend using Axios
- React state management with Hooks
- Environment variables
- CORS configuration
- Deploying frontend and backend applications
- Debugging production deployment issues
Jatin Dhamija
GitHub: https://github.com/jdcodebase
LinkedIn: https://www.linkedin.com/in/jatindhamija/
If you found this project helpful, consider giving it a ⭐ Star on GitHub.