A full-stack Expense Tracker application that helps users track, analyze, and manage their daily expenses with a modern dashboard UI.
Built using React, Tailwind CSS, Node.js, Express, MongoDB, and JWT authentication.
- π User Authentication (Register / Login with JWT)
- π Interactive Dashboard
- π° Balance Card (Available Balance, Monthly Limit, Spent)
- π§Ύ Add / Delete Expenses
- π₯§ Category-wise Expense Pie Chart
- π§ Protected Routes (Session handling)
- π± Fully Responsive UI
- βοΈ React (Vite)
- π¨ Tailwind CSS
- π Recharts
- π Axios
- π React Router DOM
- π’ Node.js
- π Express.js
- π MongoDB + Mongoose
- π JWT Authentication
- π bcryptjs
expense-tracker/ β βββ backend/ β βββ controllers/ β βββ models/ β βββ routes/ β βββ middlewares/ β βββ server.js β βββ frontend/ β βββ src/ β β βββ components/ β β βββ pages/ β β βββ api/ β β βββ App.jsx β βββ main.jsx β βββ README.md
Create a .env file in the backend directory:
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret βΆοΈ Run Locally
1οΈβ£ Clone the Repository
git clone https://github.com/your-username/expense-tracker.git
cd SmartExpenseTracker
2οΈβ£ Backend Setup
cd backend
npm install jsonwebtoken bcryptjs express mongoose
npm run dev
3οΈβ£ Frontend Setup
cd frontend
npm install
npm run dev
npm install recharts
npm install -D tailwindcss @tailwindcss/postcss autoprefixed
npm install vite
Frontend: http://localhost:5173 Backend: http://localhost:5000