Operator · deployment
Deploy GravFi contracts
Real deployments signed by your wallet, one transaction per step, on Ethereum and Robinhood Chain. Nothing is simulated; addresses come from receipts and the plan resumes where you left off.
Deploy plan · USDC → gUSDC · mainnet
Mainnet · real funds
Every step below is a real transaction paid from your wallet on Ethereum or Robinhood Chain. Your wallet becomes admin, pauser and relayer. Use a wallet you control; consider moving admin to a multisig afterwards.
Connect the wallet that will own the deployment.
- 1Deploy GravRelayMessenger on Robinhood ChainRobinhood ChainlocalEid 4663 · admin = your wallet
- 2Deploy GravBridge on Robinhood ChainRobinhood Chainmessenger = destination messenger · remoteEid 1
- 3messenger.setBridge(bridge)Robinhood ChainThe destination messenger only accepts sends from the destination bridge.
- 4messenger.grantRole(RELAYER_ROLE, wallet)Robinhood ChainLets this wallet deliver messages from the Bridge page or scripts/relayer.mjs.
- 5Deploy GravToken gUSDCRobinhood Chain"GravFi USD Coin" · 6 decimals · no public mint
- 6gUSDC.grantRole(BRIDGE_ROLE, bridge)Robinhood ChainOnly the bridge may mint or burn.
- 7bridge.setRoute(gUSDC → USDC, Token)Robinhood ChainRegisters the unwrap route on Robinhood Chain.
- 8Deploy GravRelayMessenger on EthereumEthereumlocalEid 1 · admin = your wallet
- 9Deploy GravBridge on EthereumEthereummessenger = source messenger · remoteEid 4663
- 10messenger.setBridge(bridge)EthereumThe source messenger only accepts sends from the source bridge.
- 11messenger.grantRole(RELAYER_ROLE, wallet)EthereumNeeded to deliver unwraps back to the source chain.
- 12Deploy GravVault for USDCEthereumSingle-asset custody · BRIDGE_ROLE-only movements
- 13vault.grantRole(BRIDGE_ROLE, bridge)EthereumOnly the bridge may deposit into or withdraw from the vault.
- 14bridge.setRoute(USDC → gUSDC, Vault)EthereumRegisters the wrap route on the source chain. After this the bridge is live for this asset.
Addresses
- Source token
- 0xA0b8…eB48
- Messenger · source
- —
- Bridge · source
- —
- Vault
- —
- Messenger · destination
- —
- Bridge · destination
- —
- gUSDC
- —
Gas price · Ethereum: — · Robinhood Chain: —
Rough total: ~3.5M gas on the source chain, ~3.5M on Robinhood Chain per first asset.
Rough total: ~3.5M gas on the source chain, ~3.5M on Robinhood Chain per first asset.
When finished
Paste these into .env.local (or the Vercel production env) and rebuild. The interface verifies every address on-chain before enabling actions.
NEXT_PUBLIC_BRIDGE_PROVIDER=native NEXT_PUBLIC_GRAV_MESSENGER_SOURCE= NEXT_PUBLIC_GRAV_MESSENGER_DESTINATION= NEXT_PUBLIC_GRAV_BRIDGE_SOURCE= NEXT_PUBLIC_GRAV_BRIDGE_DESTINATION= NEXT_PUBLIC_GRAV_VAULT_USDC= NEXT_PUBLIC_GRAV_TOKEN_USDC=