Multi-chain Ethereum Provider

EIP-1193 was a huge step for interoperability on Ethereum. Provider diversity exploded when EIP-1193 started being adopted and the line between integrating Metamask and WalletConnect became unnoticeable. Other providers followed and we saw many others showing up after. It also made possible for different developer libraries to exist like web3-react, Web3Modal and Blocknative’s onboard.js.

However this standard is explicitly designed for a single chain to be connected to which makes it very rigid and cumbersome in the current accelerating pace of L2 adoption and other EVM chains

In my opinion, there is a need for a new standard for Multi-Chain Ethereum Provider that is able to interface with multiple chains simultaneously therefore a wallet can expose accounts for different chains simultaneously as well. Additionally this would require that each JSON-RPC request is also targeted at a specific chainId.

EIP-1193 has already built much of the ground work for a new provider standard to exist and the existence of a Multi-Chain Ethereum Provider could easily eliminate for users to switch chains on their wallet based on dapp requirements

I would love to include in this discussion all the wallet providers but also javascript library developers.

cc @greg @ricmoo @danfinlay @rekmarks @NoahZinsmeister @lukasschor @itamarl @brunobar79


I’m on mobile and not really thinking it totally through but Why not just extend the base 1193 to incorporate the addChain method included in metamask across every other wallets.

You could just emit something like requestChangeNetwork

The only thing that might be frustrating is managing multiple providers but perhaps I’m over thinking how wallets manage them.

1 Like