TrustBridge is a decentralized, AI-powered microloan platform designed to bring financial access to underserved individuals—no traditional credit scores needed.
TrustBridge enables peer-to-peer microloans using alternative financial data. Users without formal credit histories can upload everyday documents (like utility bills or tax receipts), which are analyzed by AI to produce a TrustScore. Loans are funded transparently via Ethereum wallets.
Millions remain unbanked due to lack of credit history. TrustBridge empowers them using:
- ✅ AI-based document analysis (ITR, bills, rent)
- ✅ Decentralized identity (Ethereum + Wagmi wallet)
- ✅ Peer-to-peer lending transparency
- ✅ TrustScore for fairness & accountability
- React (Vite)
- Tailwind CSS
- Wagmi + Viem (Ethereum wallet integration)
- Flask (Python REST API)
- Firebase (Authentication + Firestore)
- Gemini Vision – document parsing
- Gemini Pro – TrustScore computation
- Ethereum Sepolia Testnet
- Wagmi library (wallet connection)
⚠️ No smart contracts in MVP — payments are simulated
- Upload income or bill documents (PDF/images)
- AI extracts data and computes a score (0–100)
- Score improves with on-time repayments
- Sign up and upload KYC
- Get TrustScore
- Apply for loan
- Receive ETH via Sepolia wallet
- Repay within 30 days
- Register and post loan offers
- Review borrower requests and TrustScore
- Approve or reject requests
- Access documents if borrower defaults (after 2+ months)
- 🔐 KYC and loan data stored in Firestore (not on-chain)
- 🔐 AI scoring processed server-side
- 🔐 Borrower docs shared only after default
Register → Upload Docs → Get TrustScore → Apply for Loan → Connect Wallet → Receive ETH → Repay
Register → Post Offer → View Requests → Review TrustScore → Approve/Reject → Track Loan
POST /vision/first-trustscore– Upload docs and generate TrustScore
POST /trustscore/update/<uid>– Update score post-repayment
POST /loan/request– Request a loanGET /loan/user/<uid>– Fetch all user loansGET /loan/status/<uid>/<loan_id>– Get loan statusPOST /loan/decision/<uid>/<loan_id>– Lender approves/rejects
POST /lender/register– Register lenderPOST /lender/offer– Post a loan offerGET /lender/offers/<uid>– View own offersGET /lender/borrowers– View pending borrowers
users/
└── {uid}/
├── loans/ # Subcollection: stores all loans requested by this borrower
│ └── {loan_id} # Individual loan documents with amount, purpose, status, etc.
├── trust_score/ # Subcollection: stores TrustScore records
│ └── {score_id} # Contains score value, explanation, and timestamp
└── profile/ # Subcollection (or a document if simpler)
└── metadata # Contains user info like name, email, KYC flags, wallet
lenders/
└── {lender_id}/
├── info/ # Subcollection: stores registration info of the lender
│ └── metadata # Contains PAN, interest preference, email, phone, etc.
└── offers/ # Subcollection: list of loan offers posted
└── {offer_id} # Offer details like max amount, interest rate, wallet, etc.
- Frontend: Vercel
- Backend: Render
- Testing: Firebase Emulator + SepoliaETH
- NFT-based identity badges
- Full loan escrow via smart contracts
- Android-first mobile app
- Real-world pilot (e.g., rural areas)
- 📧 Email: Arnab Ghosh
- 💬 Discord: Coming Soon
- 🛠 GitHub: TrustBridge