live · mainnetoc · pledge
bip-322 · stake-bonded
§ create

compose a pledge.

Write the proposition. Bond an OrangeCheck stake. Set the resolution rule. Sign once with your Bitcoin wallet, publish on Nostr. Anyone reading the envelope knows what is being pledged, who is pledging it, and what they stake on it.

composer · v0.1.0-alpha · placeholder

> status: the multi-step composer wizard lands in v0.1.0-beta.

Until then, the SDK is the lowest-friction surface. Compose the envelope, bond stake, sign, and publish in five lines:

# coming in v0.1.0-beta
yarn add @orangecheck/pledge
yarn add @orangecheck/auth-client
import { pledge, verify } from '@orangecheck/pledge';

const envelope = await pledge({
  claim:       'I will publish v1 SPEC by 2026-06-01.',
  resolves:    { block_height: 902400 },
  stake_id:    '9e3f...',
  witnesses:   ['bc1qbob...', 'bc1qcarol...'],
  sign:        wallet.signBip322,
});

await publishToNostr(envelope);

> note: @orangecheck/pledge is unpublished as of v0.1.0-alpha. Track the npm package and SPEC at oc-pledge-protocol.