Web3 version of Splitwise: Friend-to-friend debt reconciliation and implicit lending app
This project uses a smart contract to keep track of individual friends' debts towards each other, and then optimizes the number of transactions required to settle those debts. Each member's balance towards the group is maintained in the smart contract. In order to settle debts, users send crypto transactions to the other user via the smart contract. Users can also pay into the contract even if they don't owe debt, enabling ahead-of-time payments and the ability for other friends to withdraw that money as a loan.
We used a Solidity smart contract and write a dApp using Next.js. We connected to the wallet using Wallet Connect via Rainbow Kit. We deployed the contract to Polygon in order to optimize gas fees. We distributed the application using Valist in order to have decentralized dApp distribution.