ESUSU is a decentralized application (DApp) built on the Celo Mainnet that facilitates stablecoin contributions through a collective savings model known as Esusu in many African communities. The DApp allows users to create and join campaigns, contribute funds, and track campaign details transparently on the blockchain.
The dApp is a 3 in 1 solution to solving issues related to financial inclusion and poor savings trend. the sectios are
- Esusu thrift contribution => % users joibn a contribution campaign where they pool their funds evrymonth for 5 months . For every month a unique user takes home the total contribution giving everyone access to
bulk money
which naturally the couldnt have saved up. This also elemintaes the need to borrow money for fundung big projects. - Esusu piggy box => Funds are locked up over time so that users no longer have access to them. They earn
MST
tokens for locking up funds but loss these tokens if the decide to break the lock. - Esusu pay bills => users can pay for their utility and also make donations to their various projects.
- Create and manage campaigns
- Join existing campaigns => To join a campaign, users must
stake
(contributionAmount
* 5) so that they can be held accountable. - On
staking
, users earn 5EST
tokens - Contribute funds to campaigns
- View campaign details such as description, contribution amount, payout interval, total contributions, and more
- Track last payout block and user participation
- When any user cannot meet the contribution responsibility for the month, the
defaultpayment
contribution is triggerred so thecontributionAmount
is deducted from the staked amount and also a penalty of 1EST
token.
- Frontend: Next.js, Tailwind CSS, Typescript
- Backend: Solidity, Ethereum blockchain
- Smart Contracts: Ethers.js
- Deployment: Celo Mainnet
- Contract Address: 0xf9d3f0cde68a24d4da3a1c9dd31952d85855c691
- Tokens:
EST
Esusu Tokens as reward for staking andMST
MiniSafe Token as reward for locking up funds. - Sourcify Verification Link: https://repo.sourcify.dev/contracts/full_match/42220/0xf9D3F0cdE68A24d4da3a1c9dD31952D85855C691/sources/
- Clone the repository:
git clone https://github.com/emiridbest/esusu.git
- Install dependencies:
yarn install
- Start the development server:
yarn run dev
- Visit
http://localhost:3000
in your browser to view the application.
- Create an account or connect your Celo Minipay wallet.
- Go to the
site tester
in mini pay and enter http://esusu-one.vercel.app - Esusu thrift
- Explore available campaigns or create your own.
- Join campaigns to start contributing funds.
- Track campaign progress and participate in payouts.
Contributions are welcome! Please follow the standard GitHub flow:
- Fork the repository
- Create a new branch (
git checkout -b feature/<feature-name>
) - Make your changes
- Commit your changes (
git commit -am 'Add new feature'
) - Push to the branch (
git push origin feature/<feature-name>
) - Create a new Pull Request
This project is licensed under the MIT License.
- Fully implement the
stake()
logic