Frame Canary

We're excited to announce the public release of Frame Canary!

Canary is a pre-release version of Frame that we're using to test new features before making them available to a wider audience. This is our first in a series of Frame releases aimed at more aggressively pushing forward the user experience in web3.

Frame Canary

Over the past year at Frame Labs, we've spent a lot of time thinking about how to make web3 more seamless for both users and developers. One of the concepts we decided to tackle first is the idea of "being on a chain." Manually switching between chains is a relic from a single-chain paradigm, and it's time for chains to be accessible in parallel.

Built into Frame Canary is a new routing architecture called Omnichain. Designed to simplify the user experience, Omnichain eliminates the concept of "being on a chain" by allowing dapps to route requests to any of a user's available chains as needed. With Frame's Omnichain, users are now "on" all of their chains simultaneously. This makes operating across multiple chains seamless and gives dapp developers the ability to design truly multi-chain experiences, such as a decentralized exchange that allows users to swap tokens on mutiple chains at the same time.

We've also made sure that Omnichain is backwards compatible. Any dapp that currently implements the wallet_switchEthereumChain RPC method will work with Omnichain out of the box. If a dapp doesn't give you the option to switch chains natively, Frame now provides a network selector directly in the companion extension. Omnichain allows users to switch the chain for a single dapp without changing the chain for all of their other dapps. Frame will remember this selection and automatically use it for that dapp in the future.

Frame Companion Extension

These improvements are already a big step forward, but we're taking things to the next level with our Omnichain routing interface. This interface can be used by dapps that would benefit from talking to multiple chains simultaneously. With a user's permission, dapps can now request the array of available chains using our new RPC method, wallet_getEthereumChains. They can then route payloads to any of these chains by including a chainId in the JSON-RPC payload, such as "chainId": "0x1" for Mainnet or "chainId": "0xa" for Optimism.

Adding a "chainId" tells Frame to route the payload to that chain, giving developers the power to create truly multi-chain experiences.

On top of this, Canary brings with it a ton of other features, improvements, and fixes, including transaction decoding, which allows users to more easily view and understand the details of their transactions before signing them. Our goal is to provide a rich, easily consumable, and contextually-informed summary for every transaction to improve transparency and security. There's a lot more to unpack here, so stay tuned for an upcoming post where we’ll dive into more details and examples.

We look forward to helping our users push the boundaries of web3, and we have many more exciting things to come in 2023. We're dedicated to building a truly web3 native platform and delivering the best user experience, all while maintaining a strong focus on our core principles of privacy, security, and decentralization.

Start exploring Frame Canary today!

Download: https://github.com/frame-labs/frame-canary/releases/latest

Follow us on Twitter to stay up to date! @0xFrame