An Expense Tracker API built with Node.js, Express, MongoDB (Atlas), and JWT Authentication. This API enables users to manage expenses, track budgets, and provides admin functionalities to oversee users and expenses.
- User Authentication (Signup, Login, Logout) with JWT
- Profile Management (Edit profile, Upload Profile Picture via Cloudinary)
- Expense Management (Add, Edit, Delete, View expenses)
- Monthly Budget Tracking & Analytics
- Admin Panel (Manage users, Disable/Delete accounts, Manage expenses)
- Swagger API Documentation
- Backend: Node.js, Express.js
- Database: MongoDB Atlas
- Authentication: JWT (JSON Web Token)
- Image Storage: Cloudinary
- API Documentation: Swagger UI
git clone https://github.com/enrituraj/expense-tracker-api.git
cd expense-tracker-api
npm install
Create a .env
file in the root directory or rename .env.sample
to .env
and add your own configurations:
PORT=5000
MONGO_URI=your-mongodb-uri
JWT_SECRET=your-secret-key
CLOUDINARY_CLOUD_NAME=your-cloudinary-cloud-name
CLOUDINARY_API_KEY=your-cloudinary-api-key
CLOUDINARY_API_SECRET=your-cloudinary-api-secret
npm run dev
Server will start at http://localhost:5000
Swagger UI is available at:
📌 http://localhost:5000/api-docs
This provides an interactive UI to test all API endpoints.
- Ritu Raj
- GitHub: enrituraj