Docs — 書

How Dojo works

Launching a coin against another coin, trading it from anywhere, where every fee goes, and what the protocol token is for.


07Trade取引

Bridge

USDC from ten chains to Injective and back, over Circle's CCTP v2: native USDC is burned on one chain and minted, one for one, on the other. No pool stands between the two sides, so a route never runs out of liquidity, and the USDC that arrives is Circle's own — the same USDC the pairs trade.

~15 s
a fast transfer, attested as soon as the burn confirms
10 chains
Arbitrum, Base, Ethereum, Optimism, Polygon, Avalanche, Unichain, Sonic, World Chain, Linea
0 INJ
needed to arrive: Dojo's relayer completes the transfer on Injective
1 signature
to arrive as INJ, even in a wallet that has never held any

Sending to Injective

  1. 1Connect an EVM walletMetaMask, Rabby, OKX, Coinbase, WalletConnect… — through Privy, the same as the rest of the site.
  2. 2Choose where from, and how muchthe bridge approves exactly that amount of USDC, never more.
  3. 3Choose what arrivesUSDC, or INJ — and the recipient, if it is not the connected wallet: an inj1… or a 0x… address, the same wallet either way.
  4. 4Sign oncethe USDC is burned on the source chain. Circle attests it — in seconds for a fast transfer, at finality for a standard one.
  5. 5It landsDojo's relayer submits Circle's attestation on Injective and pays the gas. Nothing to sign there.

Fast or standard

how longCircle's fee
Fastabout 15 secondsabout 1–1.5 basis points of the amount (0.01–0.015%)
Standardabout 18 minutes from Ethereum and its L2s, seconds from Polygon, Avalanche and Sonicfree

The fast fee is Circle's, quoted live, and none of it is Dojo's.

Arriving as INJ

Choose INJ and the USDC never reaches the wallet as USDC. The burn names Dojo's receiver contract, CctpInjReceiver, as the only address that can complete it, with the recipient and the least INJ they will accept written into the transfer itself. On arrival, in one transaction:

USDC lands
minted to the receiver
1% Dojo fee
kept, to fund the relayer
Swap
Choice's USDC/wINJ pool, the deepest there is
Native INJ
sent to the recipient
  • Any recipient, and nothing to sign on Injective — a fresh wallet arrives with INJ to spend.
  • If the price moves more than 1% before it lands (a standard transfer takes minutes), the swap would miss the minimum, so the recipient is sent the USDC instead. A transfer is never stuck and never sold at a bad price: it arrives as one or the other.
  • Only this contract can complete a transfer addressed to it, so USDC can never be minted there without the swap that follows. It holds nothing between transfers.

Arriving as USDC

No Dojo fee. A wallet that arrives with almost no INJ, from a transfer of 5 USDC or more, is sent 0.005 INJ once, so it can pay for its first transaction.

Sending from Injective

Choose the destination chain and sign the burn on Injective. Circle attests it; then the USDC is minted on the destination by your wallet, with one signature there, paying that chain's gas. If you close the page before that, the transfer waits in History with a button to finish it.

History

Under the bridge, every transfer your wallet sent or received — route, amount, what arrived, status and links to both chains' explorers. Each record is built from the burn transaction on its own chain and from Circle's attested message, never from what a page reports, so nobody can write a transfer into someone else's history.

Limits and trust

  • Circle caps a single burn at 10,000,000 USDC.
  • CCTP is Circle's: its attestation service decides when a burn can be minted. Dojo's relayer only submits what Circle has signed, checks first that no one has minted it yet, and cannot redirect a transfer — the recipient is in the signed message.
  • If the relayer is ever down, a transfer bound for Injective can be completed by anyone with Circle's attestation, including you from the page.