Quid is a feedback marketplace on Stellar / Soroban. Founders lock USDC/XLM bounties for honest dApp feedback; hunters earn rewards for useful submissions.
- Founders struggle to find real users to test their dApps.
- Users have little incentive to write detailed, constructive feedback.
- Discord feedback is often spam or lost in noise.
- Founders create a Mission and escrow rewards in
quid-store. - Hunters submit feedback (text / screenshots) via IPFS; only the CID goes on-chain.
- Payout happens from the smart contract when the founder approves.
| Feature | Description |
|---|---|
| Bounty Vault | Rewards locked on-chain when a mission is created |
| Hybrid storage | Feedback on IPFS; CID on Soroban |
| Asset gating | Optional token/NFT holdings required to submit |
| Reputation | On-chain attestations / profiles for quality contributors |
Quid/
├── frontend/ # Next.js app (Freighter, creator + hunter UI)
├── backend/ # NestJS API (auth, missions index, upload, indexer)
├── quid-contract/ # Soroban contracts (store, reputation, milestone escrow)
└── CONTRIBUTING.md
Freighter wallet
│
▼
Frontend (Next.js) ──────► Backend (NestJS + Postgres)
│ │
│ create / submit / pay │ index events, drafts, IPFS
▼ ▼
Soroban contracts ◄─────────────┘
(quid-store, quid-reputation, quid-milestone-escrow)
│
▼
IPFS (feedback blobs; CID stored on-chain)
Current status (honest): Contracts are implemented and deployable. Frontend has Freighter + Horizon wiring and polished UI shells, but marketplace data is still mostly mock and contract IDs are not invoked yet. Backend has SEP-10 auth, mission reads/drafts, and stubs for IPFS upload + chain indexer. The MVP gap is wiring create → submit → approve → payout end-to-end.
| Layer | Stack |
|---|---|
| Frontend | Next.js, React, TypeScript, Tailwind, shadcn/ui, Freighter, Stellar SDK |
| Backend | NestJS, Prisma, PostgreSQL, SEP-10 / JWT |
| Contracts | Rust, Soroban SDK 23, Stellar CLI |
| Payments | USDC / XLM on Stellar |
- Node.js 18+
- Docker (for Postgres)
- Stellar CLI (for contracts)
- Freighter wallet (testnet)
cd frontend
npm install
cp .env.local.example .env.local # or create .env.local (see frontend/README.md)
npm run devOpen http://localhost:3000.
cd backend
docker compose up -d
cp .env.example .env # fill STELLAR_SERVER_SECRET, JWT_SECRET
npm install
npm run prisma:migrate
npm run start:devAPI defaults to http://localhost:3001.
cd quid-contract
stellar contract build
# deploy steps: see quid-contract/README.mdCreate a mission (title, dApp URL, reward per hunter, max participants), escrow funds, review submissions, approve payouts.
Browse the mission board, submit feedback + proof, get paid in USDC/XLM when approved.
See CONTRIBUTING.md. Pick issues labeled good first issue, help wanted, or priority.
See the repository license file.