For the complete documentation index, see llms.txt. This page is also available as Markdown.

From home: reach Rome from another chain

Let users on another chain reach your Rome app without leaving home — bring assets in, act, take them back out.

Your users don't have to move to Rome. From their home chain — an L2 like Arbitrum or Monad, or Solana — they bring assets in, use your Rome app, and take assets back out. The bridge is on-chain and authorized by the user's own signature; you wire your app to it through one API.

How it works

  • Inbound (home → Rome): the user's assets are credited on Rome by the settle_inbound_bridge program, authorized by the user's own signed EIP-712 intent — there is no privileged settler.

  • Outbound (Rome → home): RomeBridgeWithdraw (in rome-solidity) initiates egress; the asset is released on the home chain.

  • Transport: Circle CCTP for USDC, Wormhole for ETH and other assets.

  • Orchestration: the off-chain rome-bridge-api quotes a route, verifies the source-chain transaction, and sponsors the settle fee. It holds no funds and no keys — it can only trigger what the user already signed.

Build it

  1. Quote a route from rome-bridge-api for the user's source chain + asset → your Rome chain; it returns the rail (CCTP or Wormhole) and the steps.

  2. Have the user sign the source-chain transaction and the EIP-712 intent.

  3. Submit through the API; it verifies the source transaction and sponsors the settle. The user lands on Rome funded and uses your app.

  4. Bridge out in reverse via RomeBridgeWithdraw.

Quote/route shapes, the rails, and per-asset details are in the repo's docs/BRIDGE_API_ARCHITECTURE.md.

Read the code

  • appia — a from-home app: users bring USDC from their home chain and use Rome-side DeFi without leaving it.

  • rome-bridge-api — the orchestrator (quote → verify → sponsor).

What's next

Last updated

Was this helpful?