Content
@
0 reply
0 recast
0 reaction
Darryl Yeo 🛠️
@darrylyeo
The way web3 frontends originally interacted with the MetaMask browser extension was by looking for a global JavaScript variable at `window.ethereum` or `window.web3.currentProvider` that adheres to the EIP-1193 standard. As more wallet browser extensions and “in-app browsers” hit the market, they copied this convention and even set the `isMetaMask` flag to `true` so that existing frontends with MetaMask buttons could find them. Hence the conflict and confusion that continues to this day 🦊⚔️🥸 The solution is to adopt EIP-6963 which uses JavaScript events instead of global variables to introduce EIP-1193 objects to the frontend. In other words – @opensea, get your act together and support EIP-6963 already!!
6 replies
2 recasts
29 reactions
xh3b4sd ↑
@xh3b4sd.eth
Are there minimal open source libraries that we can use to do that wallet connection management the right way?
2 replies
0 recast
1 reaction
Darryl Yeo 🛠️
@darrylyeo
@viem by @wevm is the best library for this as of now. If you want more features and integrations beyond that, there’s also wagmi by the same team and WalletKit by @reown. I’ve also been working on my own custom wallet connection logic within @blockhead that I might split out into a library someday. https://warpcast.com/darrylyeo/0x0755f22a
0 reply
0 recast
1 reaction
Moon
@moon.eth
No
0 reply
0 recast
0 reaction