Baked into Frame Canary is new chain routing functionality — what we call “omnichain.” Designed to simplify the user experience (UX), this new omnichain UX provides web3 developers with more control to route payload to any chain the user enables. With Frame omnichain, users are now “on” all of their chains simultaneously, and dapps can switch and route between them as needed.
This is our first entry in a set of releases aimed to more aggressively push forward the UX of the web3 ecosystem. For the last year at Frame Labs, we’ve been thinking about what it means to use web3, and how we can build tooling for both developers and users to make the web3 experience more seamless.
Omnichain functionality reimagines the meaning of being “on a chain.” Originally, web3 developers only needed to build their dapps to target a single chain, Ethereum mainnet. But, as L2s and other EVM-compatible chains came online and added value to the ecosystem, it’s imperative that dapps can operate across any chain configuration that adds value for their users.
The current UX of being “on a chain” is a relic from the single-chain paradigm, and we believe it’s time for all chains to be accessible simultaneously. We believe the ability to operate across multiple chains simultaneously without inconveniencing users will become increasingly important for dapps and web3 UX in general.
Previously, Frame users viewed and switched their chain using the top dropdown method.
This method relies heavily on user knowledge to manually switch what chain they’re “on” for all of their connected dapps at the same time. Additionally, this increases human error when using multiple dapps on multiple chains. As the ecosystem grows, this will be an untenable requirement for users to manage manually, which is why we’re ecstatic to announce omnichain.
Now, use dapps that support omnichain! Any dapp that currently implements the wallet_switchEthereumChain
RPC method will work with Frame omnichain out of the box. We also have an experimental chain routing interface in v0.6 that dapps can use to talk to multiple chains at the same time.
This can be done from the extension. First, open the companion extension. Switch the chain that’s connected to a dapp. Some dapps will not provide a network selector, so Frame provides a network selector directly on the extensions, so users can easily switch chains with one click of a button. Change chain for each connected dapp without changing that chain for other dapps.
Some legacy dapps may not have implemented omnichain yet, so this can also be done from Frame itself. Open Frame. Expand settings, then go to DAPPs. Select the dapp, and select the network. Directly launch the dapp from Frame by clicking launch dapp. Change chain for each connected dapp without changing that chain for other dapps. Frame will remember this chain selection, and automatically use it for that dapp in the future.
First, use dapps that support omnichain! Any dapp that currently implements the wallet_switchEthereumChain
RPC method will work with Frame omnichain out of the box. We also have an experimental chain routing interface in v0.6 that dapps can use to talk to multiple chains at the same time. In addition, you have the ability in v0.6 to change the chain for each connected dapp without changing that chain for other dapps.
In the signers panel, you can configure chain routing settings by turning on and off the chains, testnets, rollups, and more. Turning on specific chains will give you access to those chains at any time.