Web3Auth v10 External Wallet Adapters Migration Guide
This guide focuses specifically on migrating external wallet adapter configurations from Web3Auth v7 to v10. This is a supplementary guide to the main v7 to v10 migration guide.
Overview
In v7, external wallets required manual adapter configuration. V10 simplifies this by using MIPD (Multiple Injected Provider Discovery) to automatically detect and provide access to external wallets without manual setup.
Migration Steps
External Wallet Adapter Migration
// Individual wallet adapters in v7
import { MetamaskAdapter } from "@web3auth/metamask-adapter";
import { PhantomAdapter } from "@web3auth/phantom-adapter";
import {
WalletConnectV2Adapter,
getWalletConnectV2Settings,
} from "@web3auth/wallet-connect-v2-adapter";
import { WalletConnectModal } from "@walletconnect/modal";
// Manual adapter configuration
const metamaskAdapter = new MetamaskAdapter();
web3auth.configureAdapter(metamaskAdapter);
const phantomAdapter = new PhantomAdapter();
web3auth.configureAdapter(phantomAdapter);
const defaultWcSettings = await getWalletConnectV2Settings("eip155", ["1"], "PROJECT_ID");
const walletConnectV2Adapter = new WalletConnectV2Adapter({
adapterSettings: { qrcodeModal: WalletConnectModal, ...defaultWcSettings.adapterSettings },
loginSettings: { ...defaultWcSettings.loginSettings },
});
web3auth.configureAdapter(walletConnectV2Adapter);
await web3auth.initModal();
// All external wallets are automatically detected via MIPD
// No manual adapter configuration needed
await web3auth.init();
Key Changes
- Package Removal: Remove all external wallet adapter packages
- MIPD Integration: External wallets are automatically detected using MIPD (Multiple Injected Provider Discovery)
- No Configuration: No need to manually configure or register external adapters
- WalletConnect Support: WalletConnect-compatible wallets are automatically available
Package Removal
Remove these deprecated packages from your project:
- npm
- Yarn
- pnpm
- Bun
# Remove all external wallet adapter packages
npm uninstall @web3auth/metamask-adapter @web3auth/phantom-adapter @web3auth/solflare-adapter @web3auth/wallet-connect-v2-adapter @walletconnect/modal
# Remove all external wallet adapter packages
yarn remove @web3auth/metamask-adapter @web3auth/phantom-adapter @web3auth/solflare-adapter @web3auth/wallet-connect-v2-adapter @walletconnect/modal
# Remove all external wallet adapter packages
pnpm remove @web3auth/metamask-adapter @web3auth/phantom-adapter @web3auth/solflare-adapter @web3auth/wallet-connect-v2-adapter @walletconnect/modal
# Remove all external wallet adapter packages
bun remove @web3auth/metamask-adapter @web3auth/phantom-adapter @web3auth/solflare-adapter @web3auth/wallet-connect-v2-adapter @walletconnect/modal
How It Works in v10
V10 uses MIPD (Multiple Injected Provider Discovery) to automatically detect injected wallets in the browser. When users attempt to connect, they'll see:
- Detected Wallets: All installed browser extension wallets
- WalletConnect: For mobile and other wallet connections
- Social Logins: Built-in Web3Auth authentication methods
No configuration needed - everything works out of the box!
Next Steps
Return to the main v7 to v10 migration guide to continue with other migration aspects.