On-demand verification marketplace for Africa. Connecting diaspora investors with verified local inspectors — GPS-stamped, escrow-backed evidence within hours.
# EyeOnSite
**On-demand verification marketplace for Africa.** Connecting diaspora investors with verified local inspectors — GPS-stamped, escrow-backed evidence within hours.
Built by Manti Labs (Maku Mazakpe).
> "Trust, verified."
---
## What It Is
Africa receives ~$100B in remittances annually. Diaspora families send money home to build houses, buy land, fund farms — and have no way to verify it's being used correctly. EyeOnSite fixes that.
- **Client** posts a verification task (construction progress check, property visit, etc.)
- **Inspector** (verified local) goes to the site, captures GPS-stamped photos in-app
- **Evidence** is reviewed; escrow released when client accepts
- **Platform** earns 18% commission + 2% escrow fee
**Stage:** V0 (manual validation, Accra, Ghana). V1 (KMP app) in development.
---
## Tech Stack
| Layer | Technology |
|-------|-----------|
| Android | Jetpack Compose |
| iOS | Compose Multiplatform |
| Web | Compose for Web (Kotlin/JS) — Firebase Hosting |
| Shared logic | Kotlin Multiplatform (KMP) |
| Backend | Cloud Functions v2 (Node.js) |
| Database | Cloud Firestore + SQLDelight (offline cache) |
| Auth | Firebase Authentication (phone OTP) |
| Storage | Firebase Cloud Storage |
| Payments (clients) | Stripe |
| Payments (inspectors) | Flutterwave (MTN MoMo, M-Pesa) |
| AI | Cloud Vision API |
**Principle:** Kotlin everywhere. No Flutter, no React, no AWS.
---
## Module Structure
```
EyeOnSite/
├── app/
│ ├── shared/ # KMP shared UI + business logic (Compose Multiplatform)
│ │ └── src/commonMain/kotlin/com/maku/eyeonsite/
│ │ ├── ui/
│ │ │ ├── theme/ # EyeOnSiteTheme — colors, typography, Material3
│ │ │ └── auth/ # SignInScreen (phone OTP flow)
│ │ └── App.kt # Root composable (entry point for all platforms)
│ ├── androidApp/ # Android app (Jetpack Compose)
│ │ └── google-services.json
│ ├── webApp/ # Compose for Web (Ko …