Inspiration

Over 1 billion people globally participate in informal rotating savings circles—known as chamas in East Africa, susus in West Africa, tandas in Latin America, and chit funds in South Asia.

While these community groups demonstrate tremendous financial discipline, their contribution histories remain completely invisible to the formal financial sector. When members switch groups or apply for microfinance loans, they have zero verifiable credit history. I built CircleTrust to turn community savings discipline into a portable, tamper-evident financial reputation—without touching or custoding a single dollar.

What it does

CircleTrust is a non-custodial trust and record-keeping layer for informal savings groups:

  • Tamper-Evident Ledger: Every marked payment is cryptographically sealed into a SHA-256 hash chain. Any retroactive edits break the chain and are flagged instantly by the client-side verifier.
  • Portable Reliability Score (0–100): Calculates an objective score based on on-time rate (70%), longest payment streak (20%), and tenure (10%). This score travels with the member across circles.
  • Verifiable QR Credentials: Members can generate and download a cryptographically verifiable QR code credential to share with microfinance institutions (MFIs) for loan underwriting.
  • SMS Accessibility: Automated reminders and two-way SMS webhooks via Twilio, enabling participation from basic feature phones.
  • Bilingual & Mobile-First: Designed with a mobile-first interface supporting both English and Swahili (Kiswahili).

Scope Boundary: CircleTrust does not custody or transfer funds. It records commitments and confirmations on top of groups that already handle physical/peer-to-peer transfers.

How I built it

As a solo developer, I built CircleTrust full-stack from the ground up:

  • Frontend: React 18, TypeScript, Vite, Tailwind CSS, Lucide icons, and the native browser Web Crypto API (SubtleCrypto) to independently recompute and verify SHA-256 hash chains directly in the browser.
  • Backend: Node.js, Express, TypeScript, and Prisma ORM managing an ACID-compliant SQLite relational database with strict foreign-key integrity.
  • Security & Integrity: Node crypto engine for server-side block creation and tamper-evident audit logging.
  • Communications: Twilio REST API and webhook endpoints for automated contribution alerts and SMS replies.

Challenges I ran into

  • Cross-Environment Hash Alignment: Ensuring SHA-256 hashing matched perfectly between Node's crypto module on the backend and browser window.crypto.subtle on the frontend across dates, types, and timezone normalization.
  • Fair Scoring Formulation: Designing a mathematical scoring formula that normalizes across differing contribution frequencies (weekly vs. monthly) without biasing newer members or penalizing long-standing contributors.
  • Complete Solo Execution: Managing end-to-end architecture, backend logic, crypto verification, mobile UI design, and internationalization within the hackathon timeframe.

Accomplishments that I'm proud of

  • Delivering a full working end-to-end MVP with real-time verification and instant score recalculation.
  • Creating an interactive "Simulate Tampering" demonstration feature that visibly shows the chain breaking at exact block indices when records are manipulated.
  • Seamless multi-language support (English & Swahili) built natively with zero heavy runtime overhead.

What I learned

  • Deepened my knowledge of practical cryptography, hash chains, and building audit-friendly decentralized record architectures.
  • Gained valuable insights into community-based financial systems (ROSCAs) and how lightweight digital trust tools can bridge informal economies with formal financial inclusion.

What's next for CircleTrust

  • W3C Verifiable Credentials (VCs): Standardizing the QR export as a decentralized verifiable credential for direct API integration with microfinance lenders.
  • USSD Protocol Support: Expanding beyond SMS to full interactive USSD menus for 100% offline feature-phone accessibility in remote regions.
  • PWA Offline Sync: Enabling local ledger inspection and background synchronization when connectivity is intermittent.

Built With

Share this project:

Updates

Submission history