Hi Brave Team and Community,
We’ve recently encountered an issue where wallet detection on our dApp is delayed or inconsistent when accessed through the Brave browser — especially when relying on window.ethereum
for MetaMask or Brave Wallet integration.
Our current setup:
- dApp frontend built with React and Web3.js
- Primary networks: Ethereum and BNB Chain
- Wallet options: MetaMask, WalletConnect, and Brave Wallet fallback
The same codebase works smoothly on Chrome and Firefox.
We’ve tried disabling Brave Shields and aggressive privacy features.
We’ve implemented wallet connection logic based on event listeners (ethereum#initialized
, accountsChanged
, etc.).
Here’s what we’d love clarity on:
- Is there a preferred wallet detection strategy specific to Brave Wallet?
- Do we need to wait longer for provider injection compared to MetaMask?
- Is it recommended to check for
window.brave
or another global object when Brave Wallet is active?
Our dev team at Nadcab Labs a leading Web3 Development Company is actively building dApps and NFT platforms, so we want to ensure we’re giving Brave users the best possible experience.
If anyone has tips, a workaround, or code snippets for wallet handling specific to Brave, I’d appreciate it!
Thanks in advance to the community