CeloSusu is a Farcaster mini-app that brings traditional African savings circles (Ajo/Esusu) to Web3. Pool funds with friends using cUSD/cEUR, earn yield via Moola Market, and verify members with Self Protocol. Built on Celo.
# CeloSusu - Farcaster Mini-App π¦
Decentralized rotating savings circles (Ajo/Esusu) on Celo blockchain.
## π Features
- **Create Circles** - Start a savings circle with friends/family
- **Join Circles** - Browse and join open circles
- **Weekly Contributions** - Contribute cUSD or cEUR each cycle
- **Rotating Payouts** - Members receive the pool in rotating order
- **Yield Generation** - Optional Moola Market integration for interest
- **Farcaster Integration** - Native mini-app experience
## π Contract Addresses (Celo Mainnet)
| Contract | Address |
|----------|---------|
| SusuFactory | `0x65C64b5235d1d5e6e4708fc6013907caB506841e` |
| cUSD | `0x765DE816845861e75A25fCA122bb6898B8B1282a` |
| cEUR | `0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73` |
| Self Protocol Hub | `0xe57F4773bd9c9d8b6Cd70431117d353298B9f5BF` |
## π‘οΈ Self Protocol Integration
CeloSusu integrates Self Protocol for identity verification:
- **Proof of Humanity**: Verifies users are unique humans via passport/ID scan
- **Sybil Resistance**: Prevents one person from filling circles with multiple wallets
- **Privacy Preserving**: Uses zero-knowledge proofs β no personal data stored
- **Age Verification**: Ensures users are 18+ for financial services
### How It Works
1. User clicks "Verify & Join" on a circle
2. QR code appears for scanning with Self app
3. User scans passport/ID with Self app
4. Zero-knowledge proof sent to our backend
5. Verified users can join circles
### Files
- `src/components/SelfVerification.tsx` - QR code verification component
- `src/app/api/self/verify/route.ts` - Backend verification endpoint
## π Quick Start
### 1. Install Dependencies
```bash
npm install
```
### 2. Run Development Server
```bash
npm run dev
```
Open
localhost
### 3. Build for Production
```bash
npm run build
```
## π± Deploy to Vercel
1. Push to GitHub
2. Import to Vercel
3. Deploy
```bash
# Or use Vercel CLI
npx vercel
```
## π Farcaster Mini-App Setup
### Update Manifest β¦