Keelchain
Keelchain · public testnet

Settlement for peer-to-peer trading.
No gas. No custodian.

A Rust app-chain built for fiat-to-crypto trades: escrow with arbitrated disputes, threshold-signed vaults for Bitcoin, Ethereum and Tron, a one-to-one USD stablecoin, and a free action budget instead of gas fees.

—block height
—validators
—accounts
—chain id
Why a chain

Escrow that neither trader controls, and nobody has to trust.

A fiat-for-crypto trade needs a holder for the crypto leg until the fiat leg settles. Today that holder is a company. On Keelchain it is a deterministic state machine, and every front end is just a client of it.

⚖

P2P escrow with arbitration

Offers, trades, payment windows and disputes are chain actions. Arbitrators are elected by governance and rule on evidence, on chain.

⛓

Vaults, not bridges

Bitcoin, Ethereum and Tron enter through observer-attested vaults with CGGMP21 threshold-signed keys. Light clients verify deposits against checkpoints.

$

KUSD, backed one to one

A USD stablecoin minted only against vaulted USDT. Trades and fees are quoted in it, so nobody carries an unpriced token risk.

∞

No gas

Every account gets a free action budget that regenerates daily. Lock KEEL for more capacity, get it back in full on unlock.

For builders

One chain, any front end.

A read API for everything the explorer shows, a node RPC that accepts signed actions, a WebSocket block feed, and a TypeScript SDK that encodes, signs and submits. The first client is a live marketplace; yours can be a mobile app, a bot or a desk.

Read

Blocks, accounts, markets, offers, trades, vaults and governance at testnet.keelchain.com/api/v1.

Sign

Ed25519 keys. Users bring their own through Keel Wallet, or your service holds keys for custodial accounts.

Submit

Post signed actions to testnet.keelchain.com/rpc/v1, get a receipt with events in the next block.

Fund

Accounts receive Bitcoin and Tron through vault addresses the chain assigns; on the testnet that is signet BTC and Nile USDT. How deposits work.

Onboard

Want your service to attest trades or hold a role? Write to [email protected] and it goes through governance.

# node status, no key needed
curl https://testnet.keelchain.com/rpc/v1/status

# an account's balances and nonce
curl https://testnet.keelchain.com/rpc/v1/accounts/<address>

# who attests, observes, arbitrates
curl https://testnet.keelchain.com/rpc/v1/gov/roles
// @keelchain/sdk — place a limit order
import { Keypair, RpcClient } from "@keelchain/sdk";

const rpc = new RpcClient("https://testnet.keelchain.com/rpc");
const me  = Keypair.fromSecret(process.env.KEEL_SECRET);
const tx  = await rpc.send(me, { PlaceOrder: {
  pair: "BTC-KUSD", side: "buy", order_type: "limit",
  price: 60_000n * 1_000_000n, quantity: 100_000_000n,
}});
console.log((await rpc.waitReceipt(tx)).events);
Keel Wallet

Keys on your device. Every signature approved by you.

A browser extension that creates a 24-word wallet, signs you in to Keelchain clients without a password, and shows you exactly what you are signing before it leaves the page. No server, no telemetry.

Keel Wallet account screen
Keel Wallet approval prompt
Where it stands

Testnet now. Mainnet when the vault keys are held by more than one party.

Public testnet

One validator, one observer, signet Bitcoin and Nile Tron vaults, governance with a 60-block vote and a 10-block timelock. Everything resets between releases; nothing has value.

Clients and roles

Third-party front ends, attesters and observers join through governance. The first marketplace client runs on the testnet today.

Mainnet

After a threshold key ceremony across independent signer hosts, a genesis allocation and a published audit. No date.

Public testnet. Nothing on Keelchain has monetary value yet.