| title | Getting Started |
|---|---|
| description | Run EarnProof locally and understand the repository layout |
EarnProof is split into separate repositories under the veridatum-labs GitHub organization.
| Repository | Responsibility |
|---|---|
earnproof-frontend |
Next.js app for workers, verifiers, issuers, admins, and developers |
earnproof-backend |
NestJS API for auth, indexing, proof evaluation, credential signing, and verification |
earnproof-contracts |
Soroban contracts for issuer status, proof commitments, revocation, and protocol config |
docs |
Product, API, architecture, guide, and contract documentation |
earnproof-sdk |
Future TypeScript SDK |
earnproof-specification |
Future formal credential and proof standard |
- Node.js 24+
- npm 11+
- Rust 1.93+
- Cargo
- Docker Desktop
- Freighter wallet
- Stellar testnet account
git clone https://github.com/veridatum-labs/earnproof-frontend.git
cd earnproof-frontend
npm install
cp .env.example .env.local
npm run devDefault URL:
http://localhost:3000
git clone https://github.com/veridatum-labs/earnproof-backend.git
cd earnproof-backend
npm install
cp .env.example .env
docker compose up -d
npm run prisma:generate
npm run prisma:migrate
npm run start:devDefault API:
http://localhost:4000/api/v1
Health check:
GET http://localhost:4000/api/v1/health
Swagger:
http://localhost:4000/docs
git clone https://github.com/veridatum-labs/earnproof-contracts.git
cd earnproof-contracts
cargo build
cargo testgit clone https://github.com/veridatum-labs/docs.git
cd docs
npm install
npm run devRun these before opening a pull request:
# Frontend
npm run lint
npm run build
# Backend
npm run test -- --runInBand
npm run build
# Contracts
cargo fmt --all --check
cargo test
cargo build