From 876645f9599677d20b868154dcd6a54503a4463b Mon Sep 17 00:00:00 2001 From: Aviraj singh Date: Fri, 10 Oct 2025 16:41:48 +0530 Subject: [PATCH] =?UTF-8?q?Added=20new=20app=20idea:=20Expense=20Splitter?= =?UTF-8?q?=20=E2=80=93=20Smart=20Group=20Expense=20Tracker?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Projects/2-Intermediate/ExpenseSplitter.md | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 Projects/2-Intermediate/ExpenseSplitter.md diff --git a/Projects/2-Intermediate/ExpenseSplitter.md b/Projects/2-Intermediate/ExpenseSplitter.md new file mode 100644 index 00000000..07322042 --- /dev/null +++ b/Projects/2-Intermediate/ExpenseSplitter.md @@ -0,0 +1,57 @@ +# Expense Splitter – Smart Group Expense Tracker + +**Tier:** 2-Intermediate + +An app that helps groups (friends, roommates, colleagues) split shared expenses easily and track who owes whom. +Perfect for trips, parties, or shared living arrangements where managing expenses manually becomes confusing. + +## User Stories + +- [ ] User can create a new group (e.g., "Goa Trip" or "Flatmates") +- [ ] User can add members to a group +- [ ] User can add expenses with: + - Amount + - Description + - Who paid + - How it should be split (equally or custom) +- [ ] App automatically calculates balances (who owes whom) +- [ ] User can view a summary screen showing each member’s balance +- [ ] User can mark an expense as settled + +## Bonus Features + +- [ ] Split expenses unevenly using custom percentages +- [ ] Currency selector for international trips +- [ ] Export summary as PDF or CSV +- [ ] Group chat or comments per expense +- [ ] Login & sync using Firebase or Supabase +- [ ] Offline mode (store data in localStorage/IndexedDB) +- [ ] Visual charts showing spending per person or category + +## Example Scenario + +A group of 5 friends goes on a trip. +- Riya pays ₹2,000 for hotel +- Aviraj pays ₹1,000 for food +The app calculates everyone’s share (₹600 each) and shows: +> “Aviraj owes Riya ₹400” + +Once payment is made, the expense can be marked as **settled**. + +## Useful Links & Resources + +- [Splitwise (Inspiration)](https://www.splitwise.com/) +- [React Hooks – useState & useEffect](https://react.dev/learn/state-a-components-memory) +- [Firebase Authentication Docs](https://firebase.google.com/docs/auth) +- [Chart.js Documentation](https://www.chartjs.org/docs/latest/) + +## Possible Tech Stack + +- **Frontend:** React + Tailwind CSS (or Flutter for mobile) +- **State Management:** Redux Toolkit / Zustand +- **Backend:** Node.js + Express + MongoDB +- **Auth:** Firebase / Clerk +- **Charts:** Recharts or Chart.js + +--- +