Skip to content

Commit e32ebfa

Browse files
docs: polish README with full funding/partner coverage
- Added wireframe architecture diagram and core entities/functions table - Updated 'Features Covered', TODO/Roadmap, and How To Test sections - Clarified MVP scope and planned features for funders and partners - Refactored team, stack, and contribution guide for clarity - README now fully covers requirements for funding, public good, and developer onboarding
1 parent 0f7579f commit e32ebfa

1 file changed

Lines changed: 84 additions & 0 deletions

File tree

README.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,41 @@ There is no company, licensing fee, or monetization model behind OpenEscrow —
1414

1515
---
1616

17+
## System Wireframe
18+
19+
[Tenant Wallet]
20+
|
21+
createAgreement()
22+
|
23+
+-------------+
24+
| OpenEscrow |---> (optional call) ---> [RulesModule]
25+
| Core |---> (optional call) ---> [YieldModule]
26+
+-------------+
27+
|
28+
[Factory]--- createVault() ---> [UserVaults]
29+
|
30+
[EscrowViewer]
31+
|
32+
read info/multicall
33+
v
34+
[Dashboard / UI]
35+
36+
---
37+
38+
## Core Entities & Functions
39+
40+
| Entity | Type | Description | Key Functions |
41+
|----------------|-----------|--------------------------------------------------------|--------------------------------------------|
42+
| OpenEscrowCore | Contract | Main escrow logic, handles deposits, releases, refunds | createAgreement, releaseFunds, refund |
43+
| Factory | Contract | Creates vaults/escrows for each user | createVault, getVault |
44+
| EscrowViewer | Contract | Read-only view, off-chain reading for UI/dashboards | getAgreement, getAllAgreements |
45+
| RulesModule | Interface | Optional module to add rules/validation | validateRelease |
46+
| YieldModule | Interface | Optional yield integration (Aave/Compound/mock) | claimYield, viewYield |
47+
| Agreement | Struct | Data for a single escrow (tenant, landlord, amount…) | (in OpenEscrowCore.agreements mapping) |
48+
49+
---
50+
51+
1752
### MVP Scope (Q3 2025)
1853

1954
- Escrow for rental deposits
@@ -120,6 +155,55 @@ We are seeking **$60,000** to build, audit, and launch a secure, fully open-sour
120155

121156
---
122157

158+
## 🧪 How to Test Locally
159+
160+
1. **Install Foundry (if not already)**
161+
```bash
162+
curl -L https://foundry.paradigm.xyz | bash
163+
foundryup
164+
165+
2. **Clone the repo and install**
166+
```bash
167+
git clone <repo_url>
168+
cd OpenEscrow
169+
170+
3. **Run all testsl**
171+
```bash
172+
forge test
173+
174+
4. **Run a single test suite**
175+
```bash
176+
forge test --match-contract RefundWithYieldTest
177+
178+
5. **See gas usage**
179+
```bash
180+
forge test --gas-report
181+
182+
All core flows (refund, release, yield, factory, viewer) are fully tested and should pass [PASS].
183+
184+
---
185+
186+
## Features Covered / TODO / Roadmap
187+
188+
### ✅ Features Covered
189+
190+
- Modular escrow contract with pluggable modules (rules, yield)
191+
- Refund and release flows with tested yield split (tenant/landlord)
192+
- Factory for multi-user/multi-vault management
193+
- EscrowViewer for off-chain dashboard/analytics
194+
- Core error handling and revert tests
195+
196+
### 🟡 TODO / Roadmap
197+
198+
- EIP-712 signature-based interactions (walletless UX)
199+
- Factory advanced (clones, multi-chain, mapping)
200+
- EscrowViewer: batch reads, indexer, pagination
201+
- UI: Minimal testnet demo / Remix playground
202+
- Partial refund logic (see contract TODO)
203+
- Docs polish, NatSpec, audit pass, contributor guide
204+
205+
---
206+
123207
### About the Project Lead
124208

125209
**Omri Gross**

0 commit comments

Comments
 (0)