Community-powered savings circles on Stacks. FaithPool brings traditional rotating savings groups (ROSCA) on-chain with transparent rules, automated payouts, and built-in reputation tracking.
FaithPool modernizes the ancient practice of community savings circles. Friends, families, and communities pool resources together, taking turns receiving the collective pot, building trust and wealth together.
- Trustless: Smart contracts enforce the rules fairly
- Transparent: Every contribution and payout is on-chain
- Reputation: Build on-chain credit through participation
- Global: Anyone, anywhere can join or create a circle
Week 1: 10 members contribute $100 each → Member A receives $1000
Week 2: 10 members contribute $100 each → Member B receives $1000
...
Week 10: 10 members contribute $100 each → Member J receives $1000
faithpool/
├── contracts/ # Clarity smart contracts
│ ├── core.clar # Circle creation & management
│ ├── escrow.clar # Contribution escrow
│ ├── reputation.clar # Member reputation scoring
│ ├── governance.clar # Circle voting & disputes
│ └── nft-badges.clar # Achievement NFTs
├── frontend/ # React + Vite dashboard
│ ├── components/ # UI components
│ ├── hooks/ # Blockchain interactions
│ ├── utils/ # Helper utilities
│ └── pages/ # Application pages
└── docs/ # Documentation
- Create circles with custom parameters
- Set contribution amounts and frequency
- Invite members via links
- Public and private circles
- Automated reminders
- Escrow protection
- Late penalty configuration
- Grace periods
- Transparent rotation order
- Randomized or predetermined
- Auto-escalation for missed contributions
- On-chain participation score
- History of completed circles
- Badges and achievements
- Trust metrics for invites
- Community voting
- Evidence submission
- Binding arbitration
- Slashing for bad actors
- Node.js 18+
- Leather or Xverse wallet
- STX for transaction fees
git clone https://github.com/faithorji/faithpool.git
cd faithpool
npm installcd frontend
npm install
npm run devclarinet check
npm test| Parameter | Description | Default |
|---|---|---|
| Contribution Amount | STX per period | Configurable |
| Cycle Period | Days between rounds | 7 days |
| Member Limit | Max participants | 2-20 |
| Late Fee | Penalty for missed contributions | 5% |
| Grace Period | Days before penalty | 3 days |
- Set contribution amount and frequency
- Choose rotation method (random/ordered)
- Set member limit
- Generate invite links
- Activate when full
- Accept invite
- Deposit first contribution
- Confirm commitment
- Receive payout schedule
- Receive reminders before each round
- Contribute on time
- Watch your reputation grow
- Receive your payout on your turn
| Action | Points |
|---|---|
| On-time contribution | +10 |
| Completing a circle | +100 |
| Referring new member | +25 |
| Late contribution | -20 |
| Missed contribution | -50 |
- Multi-signature controls for circle parameters
- Time-locked withdrawals
- Escrow protection
- Post-conditions for STX transfers
- Emergency pause functionality
- Smart Contracts: Clarity + Clarinet
- Frontend: React 19 + TypeScript + Tailwind CSS
- State Management: Zustand
- Blockchain: Stacks.js
- Notifications: Push protocol integration
- Mobile app
- Cross-chain deposits
- Circle insurance fund
- Governance token
- Lending against reputation
MIT
Building community wealth, one circle at a time