Inspiration

The gig economy is fragmented, your work profile and reputation on one platform can't be easily transferred to another platform. Web2 solved this badly (LinkedIn endorsements, Upwork scores) with platform-owned data that workers can't take with them. We wanted to give workers a single, portable, tamper-proof reputation that belongs to them.

What it does

Vouch It is an on-chain reputation passport protocol for Solana gig workers. When a job is completed on any participating platform, the platform calls our emit_work_record instruction, writing an immutable record to the blockchain and updating the worker's passport. The passport aggregates a 0–100 reputation score from rating quality, dispute rate, work volume, recency, and platform diversity. Workers earn soulbound NFT badges for milestones like first gig, zero disputes, and domain expertise. Any app can read or embed a passport. It's a public, verifiable credential owned entirely by the worker.

How we built it

The project has two parts:

  • Smart contract: Rust + Anchor framework, deployed on Solana devnet. Three on-chain account types: PassportAccount (per-worker aggregate), WorkRecord (immutable per-gig entry), and RegisteredPlatform.
  • Frontend: Next.js + TypeScript + @solana/wallet-adapter. Reads passport and work history directly from Solana RPC using Anchor's typed client

Challenges we ran into

Some challenges we faced during development

  • No floats on-chain: Solana's BPF runtime disallows floating-point in smart contracts. All score math had to be rewritten with integer arithmetic scaled by 100 to avoid precision loss.
  • PDA account initialization race: The demo panel needed to auto-initialize a passport before emitting a work record if one didn't exist yet, requiring two sequential transactions with proper error handling.

Accomplishments that we're proud of

  • A fully on-chain scoring algorithm for work reputation
  • Soulbound badges: NFTs with freeze authority set to the program PDA, making them non-transferable by construction.
  • Full demo: connect Phantom, submit a gig, and the score gets updated accordingly

What we learned

  • We've learned how to work with smart contracts and how to develop apps around the key idea of solana.
  • We've learned how to effectively develop our code with coding agents, and how to verify the outcome of automated processes

What's next for Vouch It

  • Real platform integrations: work with Soleer, Gibwork, and Superteam (existing solana gig platform) to call emit_work_record from their settlement flows.
  • Dispute resolution: a staking mechanism where platforms put up collateral that gets slashed for false dispute flags.
  • Cross-chain passport: bridge reputation to other ecosystems via attestation so a Solana worker's history is readable on EVM chains.

Built With

  • anchor
  • nextjs
  • rust
  • solana
  • turbopack
Share this project:

Updates