Skip to content

thefifthdev/questboard

Repository files navigation

QuestBoard 🎯

On-chain bounty board for the Stellar ecosystem. Post tasks, earn rewards, build reputation — all trustlessly on Soroban.

License: MIT Stellar Soroban Status

QuestBoard is a decentralized bounty platform built natively on Stellar. Projects post tasks with a reward locked in Soroban escrow. Contributors claim, complete, and get paid — on-chain, automatically, without a platform holding the funds.

Live on testnet: contract CBKESO2WG5QWS2GJN7CBUCUQA7JGWGI3YG3BUAPUKAPLMWWSHPNAEBFY


The problem

Open-source and Web3 projects need contributors; contributors need fair, reliable pay. Gitcoin is Ethereum-native with high gas overhead for small bounties; Dework is centralized and can freeze payouts; GitHub Issues have no payment layer. The result: critical ecosystem work goes unfunded and contributors go unpaid.

How it works

POST      Owner posts a quest with a reward locked in Soroban escrow
CLAIM     A contributor claims the quest and starts work
SUBMIT    The contributor submits a deliverable (PR link, IPFS, doc)
APPROVE   The owner approves → escrow releases the reward to the worker
          (or CANCEL while open / RECLAIM after the deadline → refund)

The contract is the source of truth for money and state. No platform holds your budget; there is no admin that can drain escrow. The only path that pays a worker is the owner's approve.

Architecture

Web (Next.js) ──wallet-signed tx──► quest-escrow (Soroban)  ◄── reads
     │                                  reward escrow + lifecycle + events
     └──REST──► server (Express+Prisma): off-chain quest briefs by quest id

See docs/architecture.md for the full design and trust model.

Tech stack

Layer Technology
Contract Rust · Soroban SDK 22 · wasm32v1-none
Client Typed TS bindings (@questboard/quest-client)
Web Next.js (App Router) · Tailwind · TanStack Query · Wallets Kit
Server Express · Prisma · SQLite (dev) / Postgres (prod) · Zod
Tooling pnpm workspace · GitHub Actions · gitleaks · Conventional Commits

Getting started

# Prerequisites: Node 20+, pnpm 9+, Rust, Stellar CLI, wasm32v1-none target
git clone https://github.com/thefifthdev/questboard.git
cd questboard
make setup
cp web/.env.example web/.env.local
cp server/.env.example server/.env
make dev     # API :4000 + web :3000

Connect Freighter (Testnet) and post your first quest. Full steps: docs/local-runbook.md.

Project structure

Path Description
contracts/quest-escrow/ Soroban escrow contract + 26 unit tests.
packages/quest-client/ Generated typed contract bindings.
server/ Off-chain metadata indexer (Express+Prisma).
web/ Next.js app wired to testnet.
docs/ Architecture, deployment, contract API, security.

Documentation

Roadmap

  • Escrow contract (post / claim / submit / approve / cancel / reclaim)
  • Testnet deployment + typed client + web app
  • Off-chain metadata indexer
  • DAO multi-approver (M-of-N) release — good first issues open
  • On-chain reputation / completed-quest history
  • Dispute & arbitration flow
  • Mainnet launch

Contributing & Stellar Wave

QuestBoard participates in the Stellar Wave Program via Drips. Pick up an issue labeled Stellar Wave or good first issue to earn contributor rewards. Start with CONTRIBUTING.md.

License

MIT — see LICENSE.

About

QuestBoard is a decentralized bounty and task coordination platform built natively on Stellar. Projects post tasks with USDC or XLM rewards locked in Soroban escrow. Contributors claim, complete, and get paid — on-chain, automatically, without gatekeepers.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors