- Commence viral app invite campaign: New user and inviter get G$2000 each.
- Add airtime freebies: Prices are subsidised at over 20x.
- Track tx hashes: This is for dispute resolution and activity monitoring.
- Improve UI: Making it look cleaner and more professional.
- Grow DAU to >650: The actual value at the time of report is 685
- Commence G$ only daily claims: Making Esusu attractive to users who do not want subsidised airtimr or data topups.
- Implemented robust user management and profile service (wallet-based identity, email/phone linking, MongoDB integration)
- Centralised transaction management for savings, withdrawals, utility payments, group contributions, and payouts with blockchain tracking
- Developed group thrift and rotating savings service (5-member groups, automated scheduling, strong validation)
- Built a utility and electricity payment service with secure API integration and auditable flows
- Added notification and multi-channel alert service (email, SMS, push) for key user and group events
- Made smart contracts upgradable
- Added test suite with above 85% coverage
- Implemented G$ face verification on Farcaster
- Onboard additional users, increasing the community base by over 150%
- Ran a monthly community giveaway scheme
- Launched referral campaign for early community members with rewards payout of over $250 so far
- Ensured GitOps pipeline is functional
Esusu is a decentralised application (DApp) built on the Celo Mainnet that modernises traditional community savings systems. It enables financial inclusion through a 3-in-1 solution that combines collaborative savings, personal finance management, and bill payment capabilities.
- Users join campaigns where they contribute funds monthly
- Each month, one participant receives the pooled contributions
- Provides access to bulk capital without traditional borrowing
- Smart contracts ensure transparency and secure fund distribution
- Personal savings with customizable time-locking
- Earn MST (MiniSafe Tokens) as rewards for maintaining locked savings
- Incentivises financial discipline and long-term planning
- Pay utility bills directly through the platform
- Make charitable donations to various projects
- Low-cost transactions using Celo's efficient blockchain
Financial exclusion remains a significant challenge across developing economies, particularly in Africa. Limited banking access and weakening savings culture, exacerbated by economic pressures and increased impulse spending, have created barriers to financial stability. Traditional community savings systems (like Esusu) face trust and efficiency challenges, while formal banking remains inaccessible to many.
Esusu bridges traditional community savings practices with blockchain technology to create a secure, transparent financial platform that:
- Preserves cultural financial traditions while eliminating trust issues
- Enables financial discipline through smart contract enforcement
- Provides accessible financial tools via mobile devices with minimal bandwidth requirements
- Promotes community cooperation through decentralised technology
- Frontend: Next.js, Tailwind CSS, Shadcn UI components, TypeScript
- Blockchain: Celo Mainnet
- Smart Contracts: Solidity, Foundry
- Development Framework: Celo Composer
- Data Storage: MongoDB
- SDK: Goat SDK
The Esusu protocol has been deployed to the following contracts:
| Network | Contract | Address |
|---|---|---|
| Celo | MiniSafeAave | 0x9fAB2C3310a906f9306ACaA76303BcEb46cA5478 |
| Celo | MiniSafeAaveIntegration | 0xB58c8917eD9e2ba632f6f446cA0509781dd676B2 |
| Celo | MiniSafeAave | 0x67fDEC406b8d3bABaf4D59627aCde3C5cD4BA90A |
| Full Contract Repo: https://github.com/emiridbest/esusu-contracts/ |
esusu/
├── farcaster/ # Next.js 15 frontend application for Farcaster
├── frontend/ # Next.js 15 frontend application for MiniPay
│ ├── app/ # App Router components and routes
│ ├── components/ # Reusable React components
│ ├── public/ # Static assets
│ └── ...
├── backend/ # Next.js 15 backend API server
│ ├── app/ # API routes
│ └── ...
└── ...
- Mini Safe: Secure savings feature
- Thrift: Group savings feature
- Chat Assistant: AI-powered assistant for performing on-chain transactions
- Node.js 18.17.0 or later
- npm or yarn
- Install dependencies for both frontend and backend:
npm run install:allTo run both the frontend and backend simultaneously:
npm run devThis will start:
- Frontend on http://localhost:3000
- Backend on http://localhost:3001
- Configure your frontend environment variables in
frontend/.env:
NEXT_PUBLIC_BACKEND_URL=http://localhost:3001
NEXT_PUBLIC_APP_URL=http://localhost:3000
- Configure your backend environment variables in
backend/.env:
PORT=3001
OPENAI_API_KEY=your_openai_api_key_here
WALLET_PRIVATE_KEY=your_wallet_private_key_here
RPC_PROVIDER_URL=your_rpc_provider_url_here
To build both production applications:
npm run buildTo start the production builds:
npm run start- Next.js 15
- React 18
- TypeScript
- Tailwind CSS
- OpenAI SDK
- Viem for Blockchain Interactions
- GOAT SDK for Web3 Integration
To access the app via the Celo MiniPay wallet:
- Open the MiniPay app
- Navigate to the
site testerfeature - Enter
http://esusu-one.vercel.app
Emiri Udogwu - Lead Developer - GitHub
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.