A local-first PWA for shared debt tracking and settlement calculation.
DebtPal is a lightweight Progressive Web App for managing shared expenses, debts, and settlements. It helps record who paid for each expense, who was involved, and how the final balance should be settled.
The app is designed for informal shared expenses such as trips, family costs, shared housing, and small group payments.
This version focuses on immediate usability: it is installable, works offline after the first successful load, and can be used without account setup or backend deployment.
- Create multiple accounting groups
- Add debt items with amount, date, payers, involved people, and notes
- Support unequal share weights for involved people
- Calculate final balances automatically
- Generate a settlement plan showing who should pay whom
- Show short calculation notes for unequal-share debts
- Visualize balances with a simple chart
- Export/import full backups or individual accountings
- Installable as a Progressive Web App
- Offline-capable after the first successful load
- Local device storage only
DebtPal supports both equal and unequal expense sharing.
By default, every involved person has a share value of 1. For unequal sharing, each person can be assigned a custom share weight.
Example:
- Expense:
700 - Family A:
4shares - Family B:
3shares - Total shares:
7 - One share:
700 / 7 = 100 - Family A owes
400 - Family B owes
300
This makes the app useful when equal splitting is not accurate.
For each debt item, DebtPal:
- Divides the total amount by the sum of all involved shares.
- Calculates how much each involved person owes.
- Credits each payer by the amount they paid.
- Computes final balances across all debt items.
- Generates a simplified payment plan between debtors and creditors.
DebtPal is currently implemented as a static local-first PWA. This choice was made to make the first usable version available quickly, with minimal setup and no dependency on a running server.
Instead of requiring user accounts, backend deployment, or database configuration, the app stores data locally in the browser and supports JSON import/export for backup and transfer.
This keeps the initial version simple and immediately usable on mobile devices. A backend-based version would be more appropriate for future versions with collaboration, cloud sync, authentication, and automatic backup.
HTML, CSS, Vanilla JavaScript, localStorage, Service Worker, and PWA manifest.
Possible future improvements include:
- optional cloud synchronization
- user accounts and authentication
- automatic backup
- multi-device support
- multi-user shared accountings
- currency labels
- recurring expense templates
- improved charts and reports
- backend/database integration
DebtPal is not a banking system or a full accounting platform. It is a focused utility for informal shared-debt tracking and settlement calculation.
No license has been selected yet.