Inspiration
1.4 billion adults worldwide have no credit score. Not because they are risky but because the financial system has no memory of them. They pay rent on time, never miss utility bills, and are deeply trusted in their communities. The system just ignores all of it.
I built TrustChain because I believe financial reputation should not depend on where you were born or what bank account you have. It should depend on who you are. And who you are your neighbors already know.
What it does
TrustChain builds a portable, user-owned trust score (300-850) from alternative behavioral data and community vouching:
- Rent payments (+8 points per month)
- Utility bills (+5 points per month)
- Mobile top-ups (+4 points per month)
- Peer vouches (weighted by voucher trust score)
- Defaults (-20 points)
An AI-powered explanation (Claude API) tells users in plain language exactly what is driving their score and how to improve it. An interactive force-directed trust network graph visualizes how trust flows through the community.
How we built it
The core of TrustChain is a graph trust-propagation algorithm modeled on PageRank. Each user is a node in a weighted directed graph. Each vouch is an edge with a strength value. Trust propagates iteratively through the network:
$$\text{score}[u] = \alpha \cdot \text{own_signals}[u] + (1 - \alpha) \cdot \sum_{v \to u} \text{score}[v] \cdot w(v, u)$$
Where $\alpha = 0.6$ is the dampening factor. The algorithm runs for 10 iterations until scores converge, then normalizes to the 300-850 FICO-equivalent range.
Stack:
- Frontend: React + Vite + Tailwind CSS
- Backend: Node.js + Express
- Database: PostgreSQL via Supabase
- AI Layer: Anthropic Claude API
- Graph Visualization: D3.js force-directed graph
Challenges we ran into
The hardest part was designing the trust propagation algorithm so that it could not be gamed. A naive implementation would allow a group of low-trust users to vouch for each other and inflate their scores. The dampening factor and score-weighted edges solve this ,a vouch from a low-trust user contributes very little to your score, just like a link from a low-PageRank page contributes little authority.
Normalizing scores across a dynamic network where users join and leave also required careful thinking about convergence and stability.
Accomplishments that we are proud of
- Built a working graph trust-propagation algorithm from scratch with no external graph library
- Integrated Claude AI to generate personalized, plain-language score explanations in real time
- Built an interactive force-directed trust network visualization that makes the algorithm visible and intuitive
- Designed a system where the user owns and controls their own financial reputation data
What we learned
That the hardest problems in fintech are not technical, they are about trust. Building a system that people will actually trust with their financial identity requires transparency, user ownership, and plain-language explanations. The algorithm had to be not just mathematically sound but humanly legible.
What's next for TrustChain
- Mobile app for logging payments on the go
- Integration with microfinance institutions as score consumers
- Cryptographic proof of score for privacy-preserving verification
- Expanding signal types to include remittance patterns and savings behavior
- Pilot program with underbanked communities in Sub-Saharan Africa and South Asia
Built With
- anthropic-claude-api
- d3.js
- drizzle-orm
- express.js
- node.js
- postgresql
- react
- supabase
- tailwind-css
- typescript
- vite
- zod
Log in or sign up for Devpost to join the conversation.