Be your own bank.
A federated mutual-credit ledger. Mint personal currencies, trade them with people you trust, and settle cryptographically — no central authority, no middleman.
For Event Managers
Add a voucher marketplace so attendees network better. Turn business-card exchanges into real value trades.
For Developers
Build your own implementation. The protocol is small, invariant, and language-agnostic.
For Self-Hosters
Deploy a bank in 10 minutes. Run your own tiny central bank in a federation of peers.
For Players
Master the barter play. Learn lead vs. follow, trust dynamics, and portfolio strategy.
For AI Enthusiasts
Let AI agents trade with each other. Agents can be holders, issuers, even banks.
For Contributors
Shape the protocol. The spec is small enough to keep in your head.
How it works in one paragraph
Every user and every bank is an ed25519 keypair. Voucher, Account, Signature, Subscription, and Order docs are canonicalized via RFC 8785 JSON, SHA-256-hashed, and content-addressed. Ledger records are bank-minted with ULIDs. In a cross-bank trade the coordinator creates the record pairs (create_records), holders submit signed Orders (submit_docs), and the coordinator clears each Order at each bank with a signed Mandate (submit_mandate). From there the banks self-advance: per-record approvals, holds, then settlement. Banks discover each other via the bank fields in Orders and call each other directly through the Address registry; subscriptions are optional. No bank ever sees the full transaction. The math binds everyone together.
See it work
Open the live demo banks — no install needed: barter-game-banks.ai-1st.deno.net/alice/ui. Register with a handle and password; the key is generated and encrypted in your browser.
Or run a bank locally:
git clone https://github.com/ai-1st/barter.game.git
cd barter.game
deno run apps/bank/genkey.ts # prints BANK_ALICE_PRIV_KEY=<base58>
BANK_ALICE_PRIV_KEY=<base58> deno run --allow-net --allow-env --allow-read --allow-write --unstable-kv apps/bank/main.tsThen open http://localhost:8000/alice/ui, register two users, issue personal currencies, and place matching orders. The banks settle on their own. Sum per Voucher = 0. The cryptographic version of “we’re even.”