Skip to main content
Arkade is an open execution engine for Bitcoin. Developers use it to build applications for payments, assets, swaps, and financial contracts. Transactions execute instantly, and users keep custody of their funds. Every Arkade transaction is a Bitcoin transaction. Arkade works on Bitcoin today, with no consensus changes.

Start Building

Connect

Set up the TypeScript SDK, connect to the Arkade operator, and create your first wallet.

Swaps

Use swap routes to add payments and asset exchange.

Build

Write financial contracts with programmable spending conditions, such as escrows and multi-signature wallets.

Issue

Issue Bitcoin-native assets and control their supply.

How Arkade Works

Arkade has two parts. An application can use either one, or both. The virtual mempool executes transactions that spend and create virtual outputs, offchain. Your application connects through the SDK to the Arkade operator, which cosigns these transactions and coordinates their settlement on Bitcoin.
  • Instant execution. Transactions execute in the virtual mempool, where independent transactions run in parallel without waiting for blocks.
  • Bitcoin finality. Settle onchain in a batch swap. One onchain transaction settles funds for thousands of users.
  • Self-custody. If the operator is unavailable, users can still claim their funds onchain on their own.
Arkade Script adds spending conditions that Bitcoin consensus doesn’t support, such as covenants and transaction introspection. An emulator enforces them by cosigning, so they can lock any Taproot output: a virtual output, or an onchain output that never enters the virtual mempool.

Technical Primer

How the virtual mempool works: virtual outputs, batch outputs, execution, and settlement.

Go Deeper

Virtual Mempool

Virtual outputs, batch outputs, offchain execution, and onchain settlement.

Security

Unilateral exit, exit costs, and the Arkade trust model.

Glossary

Definitions of Arkade terms, from control assets to virtual transaction trees.