BudgetWise is a comprehensive personal finance management application that helps users track expenses, manage budgets, and gain insights into their spending habits. Built with a modern tech stack including React, Node.js, Express, and MongoDB, this application provides a user-friendly interface for financial management.
- Add, edit, and delete financial transactions
- Categorize transactions for better organization
- View transaction history with filtering and sorting options
- Get a quick overview of your financial status
- View summary cards with key financial metrics
- Visualize spending patterns with interactive charts
- Set monthly budgets for different spending categories
- Track budget vs. actual spending
- Receive insights and recommendations based on spending patterns
- Monthly expenses chart to track spending over time
- Category pie chart to understand spending distribution
- Budget comparison charts to monitor budget adherence
- React 19
- Vite
- TailwindCSS
- Lucide React (for icons)
- Recharts (for data visualization)
- Node.js
- Express.js
- MongoDB with Mongoose
- JWT for authentication
- Node.js (v16 or higher)
- MongoDB (local or Atlas)
- npm or yarn
git clone https://github.com/Rohit1419/BudgetWise.git
cd BudgetWisecd backend
npm installCreate a .env file in the backend directory with the following variables:
MONGO_URL=your_mongodb_connection_string
PORT=5000
CORS_ORIGIN=http://localhost:5173
cd frontend
npm installcd backend
npm run devcd frontend
npm run devThe application will be available at http://localhost:5173
- Dashboard: View your financial overview, recent transactions, and spending charts
- Transactions: Manage all your financial transactions
- Budget: Set and track your monthly budgets by category
- Reports: Analyze your spending patterns and financial trends
cd backend
npm testcd frontend
npm testThe application can be deployed on Vercel:
- Create a
vercel.jsonfile in the backend directory - Configure environment variables in Vercel dashboard
- Deploy using Vercel CLI or GitHub integration
- Configure API URL environment variable
- Deploy using Vercel CLI or GitHub integration
budgetwise/
├── backend/ # Backend server code
│ ├── src/
│ │ ├── controllers/ # Request handlers
│ │ ├── models/ # Database models
│ │ ├── routes/ # API routes
│ │ ├── db/ # Database connection
│ │ ├── app.js # Express app setup
│ │ └── index.js # Server entry point
│ └── package.json
│
└── frontend/ # Frontend React application
├── src/
│ ├── components/ # Reusable UI components
│ ├── pages/ # Application pages
│ ├── services/ # API service functions
│ ├── App.jsx # Main application component
│ └── main.jsx # Entry point
└── package.json
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Rohit Gite - GitHub Profile
Made with ❤️ by Rohit Gite