BudgetWise is a database-driven group expense management system designed to help users track shared spending, split costs fairly, and settle balances with individuals across the groups you share as roommates, friends, travel companions, or event participants.
Users can create or join groups, log expenses, automatically divide costs among members, view balances (“who owes whom”), and maintain a history of all the group activity.
By leveraging a relational database, BudgetWise ensures accuracy, reliability, and fairness in shared expense management.
- Create an account with name, email, and password
- Secure login to access groups, expenses, and settlements
- Create groups for trips, households, events, etc.
- Add and manage group members
- Add expenses with amount, category, payer, date under group
- Full detail stored for transparency
- Split costs equally, by amount or by percentage among members
- System handles all calculations automatically
- Category-wise and monthly spending analytics at the individual level
- User can see how much one has spent and how much is the person's total share
- View detailed balances for each user across groups.
- Shows who owes whom and how much based on all recorded data.
- You can settle the balances with individuals (payer → payee)
- Balances update immediately across both payer and payee.
- Chronological history of expenses in the group
- Helps users verify financial transactions
- Update name, and password securely
- Frontend: React.js
- Backend Runtime: Node.js
- Backend Framework: Express.js
- Database: MySQL (relational schema)
Make sure the following are installed:
- Node.js (v18+ recommended)
- MySQL Server
- npm or yarn
- Clone the repository
git clone https://github.com/imandeol/budgetWise cd budgetWise - Install dependencies
npm install
- Database configurations
- Create a MySQL database named budgetwise
- Rename .env.example to .env and update with your database credentials
- Then run schema.sql file to create the required tables in budgetwise database.
- Start backend server
cd budget-wise-backend npm run dev - Start frontend server
-
Open new tab in bash
cd ../budget-wise-frontend npm run dev
