Today is a big day for the wallet ecosystem: EIP-6963 is now final! After an extensive review process, this Ethereum Improvement Proposal has now received the green light to become a community-wide standard.
We’re celebrating here at WalletConnect, not only because we were heavily involved in EIP-6963 but because it addresses one of our core goals — the continuous improvement of web3 UX. Let’s explore the problem that it solves and its implications for the future crypto experience.
EIP-6963: What is it and what problem does it solve?
If you’re like me and have multiple browser extension wallets installed, you already know — today’s browser extension wallet user experience is extremely poor. Getting the one you want to open can often require fiddling around with your browser wallet installations, with plenty of confusing connection behavior along the way.
This is because while there was a standard — EIP-1193: Ethereum Provider JavaScript API — for connecting different wallets (browser, mobile, hardware, and so forth) from different providers, there was no standard for discovering when a browser wallet was installed. Previously, it was common practice to inject the browser wallet into a singular JavaScript object, window.ethereum. However, this made it so that it was impossible to inject multiple providers into the same JavaScript object.