Spark
Testnet

MonSave - Ajo, onchain

MonSave brings the Nigerian ajo/esusu rotating-savings tradition onchain, built on Monad. A group contributes a fixed amount each round and one member collects the whole pot per round. Traditionally, one person, the collector holds everyone's money, keeps the records, and remembers the payout order, while funds sit idle between payouts. MonSave replaces the collector with transparent smart contracts. Its "Secure Circle" model requires every member to fully pre-fund their commitment before activation, which removes the classic rotating-savings failure: someone collecting early, then refusing to pay later rounds. Rules, membership and payout order are locked in each circle's own contract; settlement is permissionless (anyone can execute a due payout, so no operator can block your money); principal and yield are accounted separately; and idle funds (principal) can earn variable yield — real Aave V3 on Mainnet, and a clearly-labelled simulated test pool on Testnet. Administrators cannot withdraw member principal; the function does not exist. Built: 6 Solidity contracts (Foundry) with 76 tests all deployed and Sourcify-verified on Monad Testnet. A Next.js app with Reown AppKit wallet. Per-member invite links gated to the invited wallet, NNS (.nad) name resolution for adding members, per-member yield, and a bright light/dark fintech UI. A live demo circle completed the full lifecycle - create, approve, fund, activate, and a permissionless settlement with real onchain transactions. Learned: how to make savings genuinely trustless (full collateralization beats hoping people pay), Monad-native tooling (Foundry, Reown, and RPC limits like the 100-block getLogs cap that shaped our activity feed).

Discussion

Sign in to comment on this project.

No comments yet. Be the first to share what you think.