Docs

Builder guide for MetaGoal. Phase 2 — early.

Quickstart

Run a local pool in 60 seconds.

```bash
npx create-pools-demo
```

SDK

```ts
import { PoolsClient } from '@pools/sdk';

const client = new PoolsClient({ cluster: 'devnet' });
const { pool, ix } = await client.pool.create({
  creator: wallet.publicKey,
  eventId: 'wc2026-arg-bra',
  ruleScheme: 0, // WinnerTakesAll
  entryAmount: 1_000_000n, // 1 USDC
  maxParticipants: 12,
  joinDeadlineSecs: now + 86400,
  resolveBySecs: now + 172800,
});
```

Oracle plug-in

MetaGoal is oracle-pluggable. 7 kinds today, more via the OracleAdapter interface.

- ProtocolMultisig (default for World Cup events)
- CreatorCommitReveal
- PythPrice / PythSports
- SwitchboardOnDemand
- PoolsOracle (our purpose-built feed)
- Custom (any 3rd-party program)

Commissioner API

Read-only REST API for B2B partners.

`GET /api/v1/pools?limit=20` — list active pools
`GET /api/v1/health` — RPC + program health
`POST /api/v1/notify` — emit a notification (Resend + log)

Errors

All errors typed via `@pools/sdk` `PoolsError` class. See [ERRORS.md](https://github.com/JuanMarchetto/pools-protocol/blob/master/ERRORS.md).
Full docs site lands Phase 3 (Docusaurus or Nextra). For now the README + ARCHITECTURE.md + DECISIONS.md + ERRORS.md + EVENT_TEMPLATES.md + TRUST_SURFACE.md cover the protocol. Open the repo to read them.