Connect a new Chain
If your chain is not yet connected to Union, then you can permissionlessly add support. Union supports L1s, L2s, L3s, and Rollups. All you need is a VM. We currently support EVM, CosmWasm, and Move. The steps to connect are simple:
-
Upload
ibc-union
andlight-client
contractsThis means deploying and initializing both the
ibc-union
contract and the respective light clients for the chain you’re trying to connect. You will then need to deploy the CometBLS light client on your chain as well as the respective light client of your chain on Union. Union has implementations the following light clients:- Arbitrum (CosmWasm)
- Berachain (CosmWasm)
- CometBLS (Solidity, CosmWasm)
- Ethereum (CosmWasm)
- Linea (CosmWasm)
- Movement (CosmWasm)
- Scroll (CosmWasm)
- Tendermint (a.k.a. CometBFT) (CosmWasm)
-
Configure the Voyager relayer
You’ll need to either use or create a Voyager instance that supports your relaying needs.
-
Open the connection
With Voyager and the contracts in place, you can begin the connection ceremony. Assuming Voyager is tracking both Union and your chain, you will only need to send a
connection_open_init
message to accomplish this.If Voyager is not already tracking both chains, you will need to submit the remainder of the connection ceremony messages.
-
Open a channel
With a connection established, you will need to open a channel on the connection before sending messages between Union and your chain.
-
Send assets and data
With a channel open, you can now send assets and data between chains. Start by manually submitting transfer messages or see our other connect tutorials to send assets or data with your own apps.