"Our Money" — Decentralized Group Money Management on Monad
Hawamoni is a web platform that replaces trust-based informal savings groups (ajo, esusu, cooperatives) with transparent, on-chain treasury management powered by AI-driven financial insights. Built for Monad Blitz Lagos — April 11, 2026.
Any group can create a shared treasury backed by a Monad smart contract. Every contribution, proposal, vote, and fund release is recorded on-chain and visible to all members. No single person controls the funds — spending requires a majority vote.
Key features:
- On-chain group treasury (no single person holds the money)
- Democratic spending via proposals and voting
- QR code group onboarding — scan to join instantly
- Real-time contribution tracking with sub-second Monad finality
- AI-generated financial summaries and anomaly detection
Three-layer system:
| Layer | Tech | Responsibility |
|---|---|---|
| Blockchain | Solidity, Hardhat/Foundry, ethers.js | Smart contracts on Monad Testnet |
| Backend | Java Spring Boot, PostgreSQL, WebSockets | API, QR codes, event listeners |
| AI | Python FastAPI, Groq API (Llama/Mixtral) | Summaries, anomaly detection, budget suggestions |
The core HawamoniTreasury.sol contract includes the following protections:
Reentrancy Guard
executeProposal is protected with OpenZeppelin's ReentrancyGuard (nonReentrant modifier) to prevent reentrancy attacks on fund releases.
Strict Quorum Requirement
Proposals require a strict majority of all members (not just voters) to pass — votesFor >= (memberCount / 2) + 1. This prevents Sybil attacks where a bad actor joins with extra wallets to tip a bare majority vote.
Timelock on Large Withdrawals Any proposal requesting more than 30% of the treasury balance is subject to a mandatory waiting period before execution. This gives members time to react to suspicious proposals. The AI anomaly detection layer also flags these independently.
Standard Web3 onboarding (install MetaMask, get testnet tokens) creates too much friction for a live demo and for everyday Nigerian users. Hawamoni addresses this at two levels:
In-app Burner Wallets Users can join a group without an existing wallet. The app generates a temporary keypair in the browser and stores it in localStorage. A small amount of MON is dripped from a pool address on join. No MetaMask required — works on any phone browser.
Pre-funded Demo Wallets For the hackathon demo, 10–15 wallets are generated in advance and funded from the Monad faucet. Private keys are printed as QR codes on cards handed to audience members before the demo. They can import into MetaMask or use directly via the burner wallet flow.
- WhatsApp Bot — contribute, vote, and check balances inside existing WhatsApp groups
- Mobile App — native iOS/Android with push notifications
- Fiat On/Off Ramp — integrate Paystack/Flutterwave so users contribute in naira, auto-converted to MON
- Advanced AI — spending predictions, savings goal tracking, member reliability scoring
- Monad Mainnet — deploy on mainnet at launch, with potential EVM bridges