A full-stack web application that simplifies expense sharing among friends. Log in, add friends, create groups, split bills equally, track balances, and visualize spending with charts — all in one place.
- JWT Authentication: Secure login/logout with token-based authentication.
- Friend System:
- Search users.
- Send/remove friend requests.
- Groups:
- Create groups by selecting friends.
- Group creator can remove members or delete the group.
- Expenses:
- Add expenses with description, amount, and category.
- Bill is split equally among all group members.
- View who owes whom.
- Only the expense creator can delete their expenses.
- User Profile:
- View and update name, email, and phone number.
- Upload or change profile picture (base64 format).
- Password Reset: Update your password securely after logging in.
- Expense Visuals:
- View pie and circular charts inside each group.
- Visual breakdown by expense categories.
- HTML, CSS, JavaScript (Vanilla)
- Choices.js for dropdown UI
- Chart.js (for visualizations)
- Node.js with Express
- MongoDB & Mongoose for data storage
- JSON Web Tokens (JWT) for authentication