SettleKit docs

Quickstart

Build, test, and run the full stack locally.

Prerequisites

  • Node 22 (22.8.0 works with the flag the scripts already pass), pnpm, Rust + Anchor 1.1.x, Solana CLI with a funded devnet keypair.

Build and test

pnpm install
anchor build                 # builds all four programs + IDLs
./scripts/sync-idl.sh        # copy IDLs into the SDK
./scripts/dump-oracle.sh     # fetch the production oracle binary + a real roots account (once)
pnpm test:svm                # 65 tests across seven suites
cargo test -p fw-markets     # LMSR math + property tests (2,048 cases)

The LiteSVM suite includes golden tests that execute the dumped production oracle binary with a real devnet roots account and an archived full-time proof — the real verifier accepts the true claim and rejects tampered ones.

Run it

pnpm keeper init-devnet          # mock USDC + config + deployments.json
pnpm keeper bootstrap            # full market slate for upcoming fixtures (odds-seeded)
pnpm keeper watch                # settle automatically on the whistle
./scripts/dev-up.sh              # web app :3000 + live-scores SSE :8787 + watcher

Open http://localhost:3000 for the landing page, http://localhost:3000/app for the trading floor. A burner wallet is created in your browser — no extension — and the faucet funds test USDC in one click.

Settle a finished match by hand

pnpm keeper settle <fixtureId>   # idempotent: facts → settle every market → push claims