A comprehensive finance tracking application that helps users manage their expenses, track income, and make informed financial decisions. Built with React frontend and Node.js backend.
Visit the deployed application at: Smart Finance Tracker
- 📊 Interactive Dashboard with Expense Analytics
- 💰 Income and Expense Tracking
- 📈 Visual Charts and Reports
- 🔐 Secure User Authentication
- 📱 Responsive Design
- 🔄 Real-time Data Updates
- 📧 Email Notifications
- 🔍 Transaction Search and Filtering
- React.js
- Tailwind CSS
- Chart.js
- React Router
- Axios
- React Hot Toast
- Node.js
- Express.js
- MongoDB
- JWT Authentication
- Nodemailer
- Bcrypt
smart-finance-tracker/
├── frontend/ # React frontend application
│ ├── src/ # Source files
│ ├── public/ # Static files
│ └── package.json # Frontend dependencies
├── backend/ # Node.js/Express backend server
│ ├── controllers/ # Route controllers
│ ├── models/ # Database models
│ ├── routes/ # API routes
│ └── package.json # Backend dependencies
└── LICENSE # MIT License file
- Node.js >= 18.0.0
- npm >= 9.0.0
- MongoDB (local or Atlas)
-
Clone the repository:
git clone https://github.com/AnishGane/Smart-Finance-Tracker.git cd smart-finance-tracker -
Install dependencies:
# Install frontend dependencies cd frontend npm install # Install backend dependencies cd ../backend npm install
-
Set up environment variables:
Frontend (.env):
VITE_BACKEND_URL=your_backend_urlBackend (.env):
PORT=5000 MONGODB_URI=your_mongodb_uri JWT_SECRET=your_jwt_secret EMAIL_USER=your_email EMAIL_PASS=your_email_password NODE_ENV=development -
Start development servers:
# Start backend server cd backend npm run server # Start frontend server (in a new terminal) cd frontend npm run dev
The project is configured for deployment on Render:
-
Frontend (Static Site):
- Build Command:
cd frontend && npm install && npm run build - Publish Directory:
frontend/dist - Environment Variables: Set
VITE_BACKEND_URLto your backend URL
- Build Command:
-
Backend (Web Service):
- Build Command:
cd backend && npm install - Start Command:
cd backend && npm start - Environment Variables: Set all required environment variables
- Build Command:
- POST
/api/user/register- Register new user - POST
/api/user/login- User login - GET
/api/user/verify-token- Verify authentication token
- GET
/api/transactions/all- Get all transactions - POST
/api/transactions/add- Add new transaction - PUT
/api/transactions/update/:id- Update transaction - DELETE
/api/transactions/delete/:id- Delete transaction
- GET
/api/chart/data- Get chart data
This project is licensed under the MIT License - see the LICENSE file for details.
Anish Gane
- GitHub: @AnishGane