From a12367ab9bab4de462101243eeedaca1524bd932 Mon Sep 17 00:00:00 2001
From: Alexandra Tran
Date: Fri, 30 May 2025 15:13:53 -0700
Subject: [PATCH 1/5] Update SDK connect guides
---
sdk-sidebar.js | 22 +++++++++----------
.../javascript-dynamic.md | 4 ++--
.../javascript-wagmi.md | 3 ++-
.../javascript-web3auth.md | 4 ++--
sdk/{quickstart => connect}/javascript.md | 3 ++-
sdk/{quickstart => connect}/react-native.md | 3 ++-
sdk/{introduction/welcome.md => index.md} | 15 ++++++-------
wallet/how-to/connect.md | 13 ++++++-----
8 files changed, 34 insertions(+), 33 deletions(-)
rename sdk/{quickstart => connect}/javascript-dynamic.md (98%)
rename sdk/{quickstart => connect}/javascript-wagmi.md (98%)
rename sdk/{quickstart => connect}/javascript-web3auth.md (98%)
rename sdk/{quickstart => connect}/javascript.md (97%)
rename sdk/{quickstart => connect}/react-native.md (98%)
rename sdk/{introduction/welcome.md => index.md} (63%)
diff --git a/sdk-sidebar.js b/sdk-sidebar.js
index a5f57a6e3ba..1a2a6317717 100644
--- a/sdk-sidebar.js
+++ b/sdk-sidebar.js
@@ -8,29 +8,27 @@ const sidebar = {
label: 'Introduction',
collapsible: false,
collapsed: false,
+ link: {
+ type: "doc",
+ id: "index"
+ },
items: [
- 'introduction/welcome',
'introduction/supported-platforms',
'introduction/supported-networks',
'introduction/llm-prompt',
- {
- type: 'link',
- label: 'Try demo dapp',
- href: 'https://metamask-sdk-examples.vercel.app/',
- },
],
},
{
type: 'category',
- label: 'Quickstart',
+ label: 'Connect to MetaMask',
collapsible: false,
collapsed: false,
items: [
- 'quickstart/javascript-wagmi',
- 'quickstart/javascript',
- 'quickstart/javascript-dynamic',
- 'quickstart/javascript-web3auth',
- 'quickstart/react-native',
+ 'connect/javascript-wagmi',
+ 'connect/javascript',
+ 'connect/javascript-dynamic',
+ 'connect/javascript-web3auth',
+ 'connect/react-native',
],
},
{
diff --git a/sdk/quickstart/javascript-dynamic.md b/sdk/connect/javascript-dynamic.md
similarity index 98%
rename from sdk/quickstart/javascript-dynamic.md
rename to sdk/connect/javascript-dynamic.md
index 57070b30666..71df36df209 100644
--- a/sdk/quickstart/javascript-dynamic.md
+++ b/sdk/connect/javascript-dynamic.md
@@ -1,10 +1,10 @@
---
-sidebar_label: Dynamic SDK integration
+sidebar_label: Dynamic SDK
description: Quickstart guide for using MetaMask SDK and Dynamic SDK.
toc_max_heading_level: 2
---
-# MetaMask SDK + Dynamic SDK integration
+# Connect to MetaMask using Dynamic SDK
Get started with MetaMask SDK and [Dynamic SDK](https://docs.dynamic.xyz/introduction/welcome).
You can set up the SDKs in the following ways:
diff --git a/sdk/quickstart/javascript-wagmi.md b/sdk/connect/javascript-wagmi.md
similarity index 98%
rename from sdk/quickstart/javascript-wagmi.md
rename to sdk/connect/javascript-wagmi.md
index 3a4571b0fbc..4e4849565d8 100644
--- a/sdk/quickstart/javascript-wagmi.md
+++ b/sdk/connect/javascript-wagmi.md
@@ -1,9 +1,10 @@
---
description: Quickstart guide for using the SDK with a JavaScript and Wagmi dapp.
toc_max_heading_level: 2
+sidebar_label: JavaScript + Wagmi (recommended)
---
-# JavaScript + Wagmi (recommended)
+# Connect to MetaMask using JavaScript + Wagmi
Get started with MetaMask SDK in a JavaScript and Wagmi dapp.
You can set up the SDK in the following ways:
diff --git a/sdk/quickstart/javascript-web3auth.md b/sdk/connect/javascript-web3auth.md
similarity index 98%
rename from sdk/quickstart/javascript-web3auth.md
rename to sdk/connect/javascript-web3auth.md
index 937734fe845..400f1b0c375 100644
--- a/sdk/quickstart/javascript-web3auth.md
+++ b/sdk/connect/javascript-web3auth.md
@@ -1,10 +1,10 @@
---
-sidebar_label: Web3Auth SDK integration
+sidebar_label: Web3Auth SDK
description: Quickstart guide for using MetaMask SDK and Web3Auth SDK.
toc_max_heading_level: 2
---
-# MetaMask SDK + Web3Auth SDK integration
+# Connect to MetaMask using Web3Auth SDK
Get started with MetaMask SDK and [Web3Auth SDK](https://web3auth.io/docs/).
You can set up the SDKs in the following ways:
diff --git a/sdk/quickstart/javascript.md b/sdk/connect/javascript.md
similarity index 97%
rename from sdk/quickstart/javascript.md
rename to sdk/connect/javascript.md
index 62e58947bd9..6603043b8af 100644
--- a/sdk/quickstart/javascript.md
+++ b/sdk/connect/javascript.md
@@ -1,11 +1,12 @@
---
description: Quickstart guide for using the SDK with a JavaScript dapp.
+sidebar_label: JavaScript
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
-# JavaScript
+# Connect to MetaMask using JavaScript
Get started with MetaMask SDK in your JavaScript dapp.
diff --git a/sdk/quickstart/react-native.md b/sdk/connect/react-native.md
similarity index 98%
rename from sdk/quickstart/react-native.md
rename to sdk/connect/react-native.md
index 7d4529e5f73..ec47a843072 100644
--- a/sdk/quickstart/react-native.md
+++ b/sdk/connect/react-native.md
@@ -1,11 +1,12 @@
---
description: Quickstart guide for using the SDK with a React Native dapp.
+sidebar_label: React Native
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
-# React Native
+# Connect to MetaMask using React Native
Get started with MetaMask SDK in your React Native or Expo dapp.
diff --git a/sdk/introduction/welcome.md b/sdk/index.md
similarity index 63%
rename from sdk/introduction/welcome.md
rename to sdk/index.md
index 493462233ab..f1d6183b9ea 100644
--- a/sdk/introduction/welcome.md
+++ b/sdk/index.md
@@ -1,6 +1,5 @@
---
slug: /
-sidebar_label: Welcome
description: Introduction page for MetaMask SDK documentation.
---
@@ -14,7 +13,7 @@ With the SDK, you can:
- Handle transactions.
- Interact with contracts.
-[Get started with JavaScript and Wagmi.](quickstart/javascript-wagmi.md)
+[Get started by connecting to MetaMask.](connect/javascript-wagmi.md)
## Why use the SDK?
@@ -29,10 +28,10 @@ The benefits of using MetaMask SDK include the following:
## Where do I start?
-You can get started quickly with the following dapp platforms:
+You can get started by connecting to MetaMask with the following dapp platforms:
-- [JavaScript + Wagmi (recommended)](quickstart/javascript-wagmi.md)
-- [JavaScript](quickstart/javascript.md)
-- [Dynamic SDK integration](quickstart/javascript-dynamic.md)
-- [Web3Auth SDK integration](quickstart/javascript-web3auth.md)
-- [React Native](quickstart/react-native.md)
+- [JavaScript + Wagmi (recommended)](connect/javascript-wagmi.md)
+- [JavaScript](connect/javascript.md)
+- [Dynamic SDK](connect/javascript-dynamic.md)
+- [Web3Auth SDK](connect/javascript-web3auth.md)
+- [React Native](connect/react-native.md)
diff --git a/wallet/how-to/connect.md b/wallet/how-to/connect.md
index a0bf1f56566..ccb211b1e8d 100644
--- a/wallet/how-to/connect.md
+++ b/wallet/how-to/connect.md
@@ -1,10 +1,15 @@
---
-description: Connect to MetaMask using the Wallet API and EIP-6963.
+description: Connect to the MetaMask extension using the Wallet API and EIP-6963.
toc_max_heading_level: 4
---
# Connect to MetaMask
+:::tip Building a cross-platform or mobile dapp?
+For cross-platform development, mobile integration, or advanced features like QR codes and
+deeplinking, connect to MetaMask using [**MetaMask SDK**](/sdk/connect/javascript-wagmi).
+:::
+
You can connect your dapp to users' MetaMask wallets by detecting MetaMask in their browsers and
connecting to their accounts.
This page provides instructions for connecting to MetaMask using the wallet detection mechanism
@@ -15,11 +20,7 @@ This approach allows you to detect multiple installed wallets and connect to the
Learn more about EIP-6963 in [Wallet interoperability](../concepts/wallet-interoperability.md).
:::
-:::tip
-To connect to MetaMask without using EIP-6963, see the [Create a simple dapp](../tutorials/javascript-dapp-simple.md) tutorial.
-:::
-
-You can connect to MetaMask [using third-party libraries](#connect-to-metamask-using-third-party-libraries)
+You can connect to the MetaMask browser extension [using third-party libraries](#connect-to-metamask-using-third-party-libraries)
or [directly using Vite](#connect-to-metamask-directly-using-vite).
## Connect to MetaMask using third-party libraries
From 088d266528d93e6bc88177d0e972b687f5abb7ba Mon Sep 17 00:00:00 2001
From: Alexandra Tran
Date: Tue, 3 Jun 2025 19:17:14 -0700
Subject: [PATCH 2/5] add get started button
---
src/pages/index.tsx | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/pages/index.tsx b/src/pages/index.tsx
index 9c5ce534c37..7a60bf79bea 100644
--- a/src/pages/index.tsx
+++ b/src/pages/index.tsx
@@ -11,6 +11,11 @@ export default function Home(): JSX.Element {
Date: Wed, 4 Jun 2025 14:11:10 -0700
Subject: [PATCH 3/5] updates to sdk intro + redirects
---
sdk-sidebar.js | 7 +-
sdk/connect/javascript-dynamic.md | 3 +-
sdk/connect/javascript-wagmi.md | 1 +
sdk/connect/javascript-web3auth.md | 3 +-
sdk/connect/javascript.md | 1 +
sdk/connect/react-native.md | 1 +
sdk/index.md | 107 +++++++++++++-----
sdk/introduction/supported-networks.md | 27 -----
.../supported-platforms.md | 0
.../CardList/CardListItem/index.tsx | 5 +-
vercel.json | 16 +++
wallet-sidebar.js | 4 +-
wallet/concepts/wallet-interoperability.md | 16 +--
.../{connect.md => connect-extension.md} | 11 +-
wallet/index.md | 3 +-
15 files changed, 125 insertions(+), 80 deletions(-)
delete mode 100644 sdk/introduction/supported-networks.md
rename sdk/{introduction => reference}/supported-platforms.md (100%)
rename wallet/how-to/{connect.md => connect-extension.md} (97%)
diff --git a/sdk-sidebar.js b/sdk-sidebar.js
index 1a2a6317717..cc3812a9b8f 100644
--- a/sdk-sidebar.js
+++ b/sdk-sidebar.js
@@ -13,8 +13,6 @@ const sidebar = {
id: "index"
},
items: [
- 'introduction/supported-platforms',
- 'introduction/supported-networks',
'introduction/llm-prompt',
],
},
@@ -67,7 +65,10 @@ const sidebar = {
label: 'Reference',
collapsible: false,
collapsed: false,
- items: ['reference/sdk-options'],
+ items: [
+ 'reference/supported-platforms',
+ 'reference/sdk-options',
+ ],
},
],
}
diff --git a/sdk/connect/javascript-dynamic.md b/sdk/connect/javascript-dynamic.md
index 71df36df209..c30c8230a40 100644
--- a/sdk/connect/javascript-dynamic.md
+++ b/sdk/connect/javascript-dynamic.md
@@ -2,6 +2,7 @@
sidebar_label: Dynamic SDK
description: Quickstart guide for using MetaMask SDK and Dynamic SDK.
toc_max_heading_level: 2
+keywords: [connect, MetaMask, Dynamic, SDK, dapp]
---
# Connect to MetaMask using Dynamic SDK
@@ -19,7 +20,7 @@ You can set up the SDKs in the following ways:
Features include:
-- **MetaMask SDK built into Dynamic** - Use MetaMask SDK features directly within the Dynamic SDK.
+- **MetaMask SDK built into Dynamic** - Use MetaMask SDK features directly within Dynamic SDK.
- **Wallet connection** - Connect to MetaMask wallet with enhanced features.
- **Mobile experience** - Optimized for both desktop and mobile users.
- **TypeScript support** - Full type safety and modern development experience.
diff --git a/sdk/connect/javascript-wagmi.md b/sdk/connect/javascript-wagmi.md
index 4e4849565d8..e3f9c8e0b15 100644
--- a/sdk/connect/javascript-wagmi.md
+++ b/sdk/connect/javascript-wagmi.md
@@ -2,6 +2,7 @@
description: Quickstart guide for using the SDK with a JavaScript and Wagmi dapp.
toc_max_heading_level: 2
sidebar_label: JavaScript + Wagmi (recommended)
+keywords: [connect, MetaMask, JavaScript, Wagmi, SDK, dapp]
---
# Connect to MetaMask using JavaScript + Wagmi
diff --git a/sdk/connect/javascript-web3auth.md b/sdk/connect/javascript-web3auth.md
index 400f1b0c375..cbd3bfb3265 100644
--- a/sdk/connect/javascript-web3auth.md
+++ b/sdk/connect/javascript-web3auth.md
@@ -2,6 +2,7 @@
sidebar_label: Web3Auth SDK
description: Quickstart guide for using MetaMask SDK and Web3Auth SDK.
toc_max_heading_level: 2
+keywords: [connect, MetaMask, Web3Auth, SDK, dapp]
---
# Connect to MetaMask using Web3Auth SDK
@@ -18,7 +19,7 @@ You can set up the SDKs in the following ways:
Features include:
-- **MetaMask SDK built into Web3Auth** - Use MetaMask SDK features directly within the Web3Auth SDK.
+- **MetaMask SDK built into Web3Auth** - Use MetaMask SDK features directly within Web3Auth SDK.
- **Web3Auth social login** - Enable users to sign in with an email or social media account.
- **Wallet connection** - Connect to MetaMask wallet with enhanced features.
- **Mobile experience** - Optimized for both desktop and mobile users.
diff --git a/sdk/connect/javascript.md b/sdk/connect/javascript.md
index 6603043b8af..21b09d185e0 100644
--- a/sdk/connect/javascript.md
+++ b/sdk/connect/javascript.md
@@ -1,6 +1,7 @@
---
description: Quickstart guide for using the SDK with a JavaScript dapp.
sidebar_label: JavaScript
+keywords: [connect, MetaMask, JavaScript, SDK, dapp]
---
import Tabs from "@theme/Tabs";
diff --git a/sdk/connect/react-native.md b/sdk/connect/react-native.md
index 5103156ffb3..2a0891974b4 100644
--- a/sdk/connect/react-native.md
+++ b/sdk/connect/react-native.md
@@ -1,6 +1,7 @@
---
description: Quickstart guide for using the SDK with a React Native dapp.
sidebar_label: React Native
+keywords: [connect, MetaMask, React, Native, SDK, dapp]
---
import Tabs from "@theme/Tabs";
diff --git a/sdk/index.md b/sdk/index.md
index b80e406b382..ce5f9a8be1b 100644
--- a/sdk/index.md
+++ b/sdk/index.md
@@ -1,42 +1,89 @@
---
slug: /
description: Introduction page for MetaMask SDK documentation.
+keywords: [connect, MetaMask, SDK, integrate, dapp]
---
-# Build onchain dapps with MetaMask SDK
+import Button from '@site/src/components/elements/buttons/button'
+import CardList from '@site/src/components/CardList'
-MetaMask SDK is a toolkit that allows you to build onchain dapps.
-With the SDK, you can:
+# Seamlessly connect to MetaMask using the SDK
-- Authenticate users.
-- Manage wallet states.
-- Handle transactions.
-- Interact with contracts.
+MetaMask SDK is a toolkit that enables a fast, reliable, and seamless connection from your dapp to the MetaMask extension and MetaMask Mobile.
+With the SDK, you can easily onboard users and interact with their accounts on desktop or mobile, across all EVM L1/L2 networks.
-[Get started by connecting to MetaMask.](connect/javascript-wagmi.md)
+
+
+
-:::tip Build embedded wallet experiences that work seamlessly with MetaMask
-Introducing our latest [Embedded Wallets SDK](https://web3auth.io/docs) (previously Web3Auth), you can now onboard users
-instantly and design seamless onchain experiences with social logins, passkeys and more.
-:::
-
-## Why use the SDK?
-
-The benefits of using MetaMask SDK include the following:
+## Supported platforms and libraries
-- It works on multiple dapp platforms:
- - Web dapps - Connect to the MetaMask browser extension or use QR codes to connect to MetaMask Mobile.
- - Mobile dapps - Use deeplinks to connect to MetaMask Mobile.
-- It works with all EVM-compatible L1/L2 networks.
-- It handles onboarding of users.
-- It is battle tested with millions of users on MetaMask.
+You can get started with the SDK on the following dapp platforms or third-party libraries:
-## Where do I start?
+
-You can get started by connecting to MetaMask with the following dapp platforms:
-
-- [JavaScript + Wagmi (recommended)](connect/javascript-wagmi.md)
-- [JavaScript](connect/javascript.md)
-- [Dynamic SDK](connect/javascript-dynamic.md)
-- [Web3Auth SDK](connect/javascript-web3auth.md)
-- [React Native](connect/react-native.md)
+:::tip Build embedded wallet experiences that work seamlessly with MetaMask
+Introducing our latest [Embedded Wallets SDK](connect/javascript-web3auth.md) (Web3Auth), you can now onboard users
+instantly and design seamless onchain experiences with social logins, passkeys and more.
+:::
diff --git a/sdk/introduction/supported-networks.md b/sdk/introduction/supported-networks.md
deleted file mode 100644
index b974d150d85..00000000000
--- a/sdk/introduction/supported-networks.md
+++ /dev/null
@@ -1,27 +0,0 @@
----
-description: Supported EVM networks for MetaMask SDK.
----
-
-# Supported networks
-
-MetaMask SDK works with all EVM-compatible L1/L2 networks, including:
-
-- Ethereum
-- Linea
-- Base
-- Optimism
-- Polygon
-- Arbitrum
-- Avalanche
-- BNB Chain
-
-See [Chainlist](https://chainlist.org/) for the full list of supported networks.
-
-:::tip
-For production deployments, it's important to use reliable RPC providers instead of public nodes.
-We recommend using services like [MetaMask Developer](https://developer.metamask.io/) to ensure better reliability and performance.
-:::
-
-:::note
-You can also connect to some non-EVM networks, including [Starknet](/wallet/how-to/use-non-evm-networks/starknet/), using MetaMask Snaps.
-:::
diff --git a/sdk/introduction/supported-platforms.md b/sdk/reference/supported-platforms.md
similarity index 100%
rename from sdk/introduction/supported-platforms.md
rename to sdk/reference/supported-platforms.md
diff --git a/src/components/CardList/CardListItem/index.tsx b/src/components/CardList/CardListItem/index.tsx
index a2dcb456a3e..8697c588507 100644
--- a/src/components/CardList/CardListItem/index.tsx
+++ b/src/components/CardList/CardListItem/index.tsx
@@ -15,6 +15,7 @@ export interface CardItem {
description?: ReactNode
href?: string
flaskOnly?: boolean
+ buttonIcon?: 'arrow-right' | 'external-arrow'
}
interface CardListItemProps {
@@ -22,7 +23,7 @@ interface CardListItemProps {
}
export default function CardListItem({ item }: CardListItemProps) {
- const { title, description, href, flaskOnly } = item
+ const { title, description, href, flaskOnly, buttonIcon = 'arrow-right' } = item
const [isHovered, setIsHovered] = useState(false)
const { colorMode } = useColorMode()
const [theme, setTheme] = useState('')
@@ -66,7 +67,7 @@ export default function CardListItem({ item }: CardListItemProps) {
as="button"
label={false}
type={theme === 'dark' ? 'secondary' : 'primary'}
- icon="arrow-right"
+ icon={buttonIcon}
style={
theme === 'dark'
? {
diff --git a/vercel.json b/vercel.json
index 5d03062ac8b..3e04538a280 100644
--- a/vercel.json
+++ b/vercel.json
@@ -46,6 +46,22 @@
"source": "/wallet/how-to/access-provider/",
"destination": "/wallet/"
},
+ {
+ "source": "/wallet/how-to/connect/",
+ "destination": "/sdk/"
+ },
+ {
+ "source": "/sdk/quickstart/:path*",
+ "destination": "/sdk/connect/:path*"
+ },
+ {
+ "source": "/sdk/introduction/supported-platforms/",
+ "destination": "/sdk/reference/supported-platforms/"
+ },
+ {
+ "source": "/sdk/introduction/supported-networks/",
+ "destination": "/sdk/"
+ },
{
"source": "/wallet/how-to/use-3rd-party-integrations/",
"destination": "/sdk/"
diff --git a/wallet-sidebar.js b/wallet-sidebar.js
index 24b7591abc7..9609923a93a 100644
--- a/wallet-sidebar.js
+++ b/wallet-sidebar.js
@@ -17,8 +17,8 @@ const sidebar = {
items: [
{
type: "doc",
- label: "Connect to MetaMask",
- id: "how-to/connect"
+ label: "Connect to the extension",
+ id: "how-to/connect-extension"
},
{
type: "doc",
diff --git a/wallet/concepts/wallet-interoperability.md b/wallet/concepts/wallet-interoperability.md
index 19011cff8e1..3dbf64760d1 100644
--- a/wallet/concepts/wallet-interoperability.md
+++ b/wallet/concepts/wallet-interoperability.md
@@ -79,10 +79,12 @@ interface EIP6963RequestProviderEvent extends Event {
The following third-party libraries support EIP-6963:
-- [Wagmi 2+](https://wagmi.sh)
-- [Web3Modal 3+](https://docs.walletconnect.com/web3modal/about)
+- [Wagmi 2+](/sdk/connect/javascript-wagmi)
+- [Reown AppKit](https://docs.reown.com/appkit/overview)
- [MIPD Store](https://github.com/wevm/mipd)
-- [RainbowKit](https://www.rainbowkit.com/)
+- [RainbowKit](https://www.rainbowkit.com)
+- [Web3-Onboard](https://onboard.blocknative.com)
+- [ConnectKit](https://docs.family.co/connectkit)
### MIPD Store
@@ -97,8 +99,7 @@ supports TypeScript types.
:::note
MetaMask SDK does not support connecting to non-MetaMask wallets via EIP-6963.
-If you intend to support discovery of other wallets, we recommend using other methods of adding
-EIP-6963 support such as [Wagmi 2+](https://wagmi.sh).
+If you intend to support discovery of other wallets, we recommend using a third-party library such as [Wagmi](/sdk/connect/javascript-wagmi).
:::
[MetaMask SDK](/sdk) automatically checks for the presence of the MetaMask extension via EIP-6963.
@@ -109,10 +110,9 @@ By adhering to the standards set by EIP-6963, the SDK unambiguously identifies a
MetaMask, resolving potential conflicts that might arise with other wallet extensions, ensuring a
more stable and reliable interaction for users.
-The SDK is also being integrated into [Wagmi 2+](https://wagmi.sh/), which supports EIP-6963.
+The SDK is also integrated into third-party libraries, like [Wagmi](/sdk/connect/javascript-wagmi), which support EIP-6963.
The SDK on its own supports connecting _only_ to MetaMask via EIP-6963, so if you intend to support
-discovery of other wallets, we recommend using other methods of adding EIP-6963 support, such as
-Wagmi 2+.
+discovery of other wallets, we recommend using third-party libraries.
## Wallet support
diff --git a/wallet/how-to/connect.md b/wallet/how-to/connect-extension.md
similarity index 97%
rename from wallet/how-to/connect.md
rename to wallet/how-to/connect-extension.md
index ccb211b1e8d..7ee77760baf 100644
--- a/wallet/how-to/connect.md
+++ b/wallet/how-to/connect-extension.md
@@ -1,13 +1,14 @@
---
description: Connect to the MetaMask extension using the Wallet API and EIP-6963.
toc_max_heading_level: 4
+keywords: [extension, API]
---
-# Connect to MetaMask
+# Connect to the MetaMask extension
:::tip Building a cross-platform or mobile dapp?
For cross-platform development, mobile integration, or advanced features like QR codes and
-deeplinking, connect to MetaMask using [**MetaMask SDK**](/sdk/connect/javascript-wagmi).
+deeplinking, connect to MetaMask using [**MetaMask SDK**](/sdk) instead.
:::
You can connect your dapp to users' MetaMask wallets by detecting MetaMask in their browsers and
@@ -27,10 +28,10 @@ or [directly using Vite](#connect-to-metamask-directly-using-vite).
You can connect to MetaMask using the following third-party libraries that support EIP-6963:
-- [Wagmi 2+](https://wagmi.sh)
-- [Web3Modal 3+](https://docs.walletconnect.com/web3modal/about)
+- [Wagmi 2+](/sdk/connect/javascript-wagmi)
+- [Reown AppKit](https://docs.reown.com/appkit/overview)
- [MIPD Store](https://github.com/wevm/mipd)
-- [RainbowKit](https://www.rainbowkit.com)
+- [RainbowKit](https://rainbowkit.com/docs/introduction)
- [Web3-Onboard](https://onboard.blocknative.com)
- [ConnectKit](https://docs.family.co/connectkit)
diff --git a/wallet/index.md b/wallet/index.md
index 44a17f00de8..39ff4903ecc 100644
--- a/wallet/index.md
+++ b/wallet/index.md
@@ -1,9 +1,10 @@
---
slug: /
description: Introduction page for the Wallet API documentation.
+keywords: [extension, api]
---
-# Integrate your dapp with the MetaMask wallet
+# Integrate your dapp with MetaMask using the Wallet API
:::tip Building a cross-platform or mobile dapp?
For cross-platform development, mobile integration, or advanced features like QR codes and
From 3fdde08b6877ae6a984cb8951ef5991bbb686526 Mon Sep 17 00:00:00 2001
From: Alexandra Tran
Date: Thu, 5 Jun 2025 11:30:17 -0700
Subject: [PATCH 4/5] address feedback
---
sdk/index.md | 36 +++++++++-------------
wallet/concepts/wallet-api.md | 2 +-
wallet/concepts/wallet-interoperability.md | 4 +--
wallet/how-to/access-accounts.md | 2 +-
wallet/index.md | 2 +-
wallet/reference/provider-api.md | 2 +-
wallet/tutorials/javascript-dapp-simple.md | 4 +--
7 files changed, 23 insertions(+), 29 deletions(-)
diff --git a/sdk/index.md b/sdk/index.md
index ce5f9a8be1b..7fdf11287db 100644
--- a/sdk/index.md
+++ b/sdk/index.md
@@ -9,8 +9,8 @@ import CardList from '@site/src/components/CardList'
# Seamlessly connect to MetaMask using the SDK
-MetaMask SDK is a toolkit that enables a fast, reliable, and seamless connection from your dapp to the MetaMask extension and MetaMask Mobile.
-With the SDK, you can easily onboard users and interact with their accounts on desktop or mobile, across all EVM L1/L2 networks.
+MetaMask SDK enables a fast, reliable, and seamless connection from your dapp to the MetaMask extension and MetaMask Mobile.
+With the SDK, you can easily onboard users and interact with their accounts on desktop or mobile, across all EVM networks.
+## Why use the SDK?
+
+MetaMask SDK gives your dapp a powerful upgrade:
+
+- **Cross-platform, cross-browser support** - One integration covers both desktop and mobile, all major browsers, and the MetaMask Mobile app—streamlining your user onboarding and eliminating edge cases.
+- **Mobile connection that just works** - Say goodbye to clunky "open in in-app browser" flows.
+ The SDK enables a native connection from any mobile browser (Safari, Chrome, etc.) directly to MetaMask Mobile, using secure deeplinking and session management.
+- **Production-ready, battle-tested** - MetaMask SDK is used in high-volume dapps across DeFi, NFTs, gaming, and more—ensuring stability, speed, and a smooth developer experience.
+- **Multichain-ready by design** - Today, the SDK supports all EVM networks.
+ Coming soon: Seamless connection to non-EVM chains like Solana and Bitcoin.
+ Futureproof your dapp with a single integration.
+
## Supported platforms and libraries
You can get started with the SDK on the following dapp platforms or third-party libraries:
@@ -56,30 +68,12 @@ You can get started with the SDK on the following dapp platforms or third-party
title: 'React Native',
description: 'Set up the SDK in a React Native or Expo dapp.',
},
- {
- href: 'https://docs.reown.com/appkit/overview',
- title: 'Reown AppKit',
- description: 'Use SDK features with Reown AppKit.',
- buttonIcon: 'external-arrow',
- },
- {
- href: 'https://www.rainbowkit.com',
- title: 'RainbowKit',
- description: 'Use SDK features with RainbowKit.',
- buttonIcon: 'external-arrow',
- },
{
href: 'https://onboard.blocknative.com',
title: 'Web3-Onboard',
description: 'Use SDK features with Web3-Onboard.',
buttonIcon: 'external-arrow',
- },
- {
- href: 'https://docs.family.co/connectkit',
- title: 'ConnectKit',
- description: 'Use SDK features with ConnectKit.',
- buttonIcon: 'external-arrow',
- },
+ }
]}
/>
diff --git a/wallet/concepts/wallet-api.md b/wallet/concepts/wallet-api.md
index 02ea9cc6817..5eef79e0df4 100644
--- a/wallet/concepts/wallet-api.md
+++ b/wallet/concepts/wallet-api.md
@@ -27,7 +27,7 @@ MetaMask supports [EIP-6963](https://eips.ethereum.org/EIPS/eip-6963), which int
alternative wallet detection mechanism to the `window.ethereum` injected provider.
This alternative mechanism enables dapps to support [wallet interoperability](wallet-interoperability.md)
by discovering multiple injected wallet providers in a user's browser.
-We recommend [using this mechanism to connect to MetaMask](../how-to/connect.md).
+We recommend [using this mechanism to connect to MetaMask](../how-to/connect-extension.md).
You can access the provider API using the selected EIP-6963 provider object.
Throughout this documentation, we refer to the selected provider using `provider`.
diff --git a/wallet/concepts/wallet-interoperability.md b/wallet/concepts/wallet-interoperability.md
index 3dbf64760d1..5924a388b37 100644
--- a/wallet/concepts/wallet-interoperability.md
+++ b/wallet/concepts/wallet-interoperability.md
@@ -26,14 +26,14 @@ provided from each installed wallet:
-You can [connect to MetaMask using EIP-6963](../how-to/connect.md) and see the
+You can [connect to MetaMask using EIP-6963](../how-to/connect-extension.md) and see the
[EIP-6963 Vite React + TypeScript demo](https://github.com/MetaMask/vite-react-ts-eip-6963/tree/main)
for more information.
## EIP-6963 interfaces
Wallets that support EIP-6963 implement and expose the following standardized interfaces.
-When [connecting to MetaMask using EIP-6963](../how-to/connect.md), it's important to review
+When [connecting to MetaMask using EIP-6963](../how-to/connect-extension.md), it's important to review
and understand these interfaces.
### Provider info
diff --git a/wallet/how-to/access-accounts.md b/wallet/how-to/access-accounts.md
index d5bbe980113..aff91c27010 100644
--- a/wallet/how-to/access-accounts.md
+++ b/wallet/how-to/access-accounts.md
@@ -31,7 +31,7 @@ You can also access users' accounts on some [non-EVM networks](/wallet/how-to/us
:::caution Important
This section describes how to create a single connect button.
-When connecting to multiple wallets, use the [Connect to MetaMask](connect.md) guide to create
+When connecting to multiple wallets, use the [Connect to the MetaMask extension](connect-extension.md) guide to create
multiple connect buttons.
:::
diff --git a/wallet/index.md b/wallet/index.md
index 39ff4903ecc..bfca4d0ba3e 100644
--- a/wallet/index.md
+++ b/wallet/index.md
@@ -25,7 +25,7 @@ interact with users' EVM accounts, and implements standard interfaces like
MetaMask also supports non-EVM networks, including native support for [Solana](how-to/use-non-evm-networks/solana.md).
-[Get started by connecting to MetaMask.](how-to/connect.md)
+[Get started with the Wallet API.](how-to/connect-extension.md)
## Wallet API vs. SDK
diff --git a/wallet/reference/provider-api.md b/wallet/reference/provider-api.md
index b19040b953b..c5be480d94a 100644
--- a/wallet/reference/provider-api.md
+++ b/wallet/reference/provider-api.md
@@ -13,7 +13,7 @@ MetaMask supports [EIP-6963](https://eips.ethereum.org/EIPS/eip-6963), which int
alternative wallet detection mechanism to the `window.ethereum` injected provider.
This alternative mechanism enables dapps to support [wallet interoperability](../concepts/wallet-interoperability.md)
by discovering multiple injected wallet providers in a user's browser.
-We recommend [using this mechanism to connect to MetaMask](../how-to/connect.md).
+We recommend [using this mechanism to connect to MetaMask](../how-to/connect-extension.md).
You can access the provider API using the selected EIP-6963 provider object.
Throughout this documentation, we refer to the selected provider using `provider`.
diff --git a/wallet/tutorials/javascript-dapp-simple.md b/wallet/tutorials/javascript-dapp-simple.md
index c765b6f6407..b8fff49a6e2 100644
--- a/wallet/tutorials/javascript-dapp-simple.md
+++ b/wallet/tutorials/javascript-dapp-simple.md
@@ -9,7 +9,7 @@ It demonstrates the basics of connecting to MetaMask: detecting the MetaMask pro
:::caution Learning tutorial
This tutorial is for educational purposes and connects to MetaMask using the legacy provider object, `window.ethereum`, for the sake of simplicity.
-For deployment in a production environment, we recommend [connecting to MetaMask using EIP-6963](../how-to/connect.md) instead.
+For deployment in a production environment, we recommend [connecting to MetaMask using EIP-6963](../how-to/connect-extension.md) instead.
[EIP-6963](https://eips.ethereum.org/EIPS/eip-6963) introduces an alternative wallet detection mechanism to the `window.ethereum` provider, and enables dapps to support [wallet interoperability](../concepts/wallet-interoperability.md).
@@ -86,7 +86,7 @@ Update `index.html` to include the script:
:::caution
The `@metamask/detect-provider` module is deprecated, and is only used here for educational purposes.
-In production environments, we recommend [connecting to MetaMask using EIP-6963](../how-to/connect.md).
+In production environments, we recommend [connecting to MetaMask using EIP-6963](../how-to/connect-extension.md).
:::
Install the `@metamask/detect-provider` module in your project directory:
From 0873bb4fcde38eb89725db955c774c04f9ae4dd9 Mon Sep 17 00:00:00 2001
From: Alexandra Tran
Date: Thu, 5 Jun 2025 12:04:47 -0700
Subject: [PATCH 5/5] move llm prompt and update copy
---
sdk-sidebar.js | 13 +++----------
sdk/index.md | 3 ++-
sdk/{introduction => reference}/llm-prompt.md | 0
vercel.json | 4 ++++
4 files changed, 9 insertions(+), 11 deletions(-)
rename sdk/{introduction => reference}/llm-prompt.md (100%)
diff --git a/sdk-sidebar.js b/sdk-sidebar.js
index cc3812a9b8f..382b6d9c992 100644
--- a/sdk-sidebar.js
+++ b/sdk-sidebar.js
@@ -4,17 +4,9 @@
const sidebar = {
sdkSidebar: [
{
- type: 'category',
+ type: 'doc',
label: 'Introduction',
- collapsible: false,
- collapsed: false,
- link: {
- type: "doc",
- id: "index"
- },
- items: [
- 'introduction/llm-prompt',
- ],
+ id: "index",
},
{
type: 'category',
@@ -66,6 +58,7 @@ const sidebar = {
collapsible: false,
collapsed: false,
items: [
+ 'reference/llm-prompt',
'reference/supported-platforms',
'reference/sdk-options',
],
diff --git a/sdk/index.md b/sdk/index.md
index 7fdf11287db..0507cae7b20 100644
--- a/sdk/index.md
+++ b/sdk/index.md
@@ -39,7 +39,8 @@ MetaMask SDK gives your dapp a powerful upgrade:
## Supported platforms and libraries
-You can get started with the SDK on the following dapp platforms or third-party libraries:
+MetaMask SDK is available in a variety of ways to make integration as easy as possible.
+You can access it directly via npm, through popular developer libraries like Wagmi, or as part of popular convenience libraries.