From 8636d24202ae89baee2d4780aacfff1526abf108 Mon Sep 17 00:00:00 2001 From: Alexandra Tran Date: Fri, 21 Mar 2025 12:36:35 -0700 Subject: [PATCH 1/8] Document Solana wallet standard support --- wallet-sidebar.js | 7 ++++++- wallet/how-to/use-non-evm-networks/index.md | 13 ++++++++----- wallet/how-to/use-non-evm-networks/solana.md | 16 ++++++++++++++++ .../use-non-evm-networks/starknet/index.md | 2 +- 4 files changed, 31 insertions(+), 7 deletions(-) create mode 100644 wallet/how-to/use-non-evm-networks/solana.md diff --git a/wallet-sidebar.js b/wallet-sidebar.js index 8ba6e7763e3..d177de01d7b 100644 --- a/wallet-sidebar.js +++ b/wallet-sidebar.js @@ -99,9 +99,14 @@ const sidebar = { collapsed: true, link: { type: "doc", id: "how-to/use-non-evm-networks/index" }, items: [ + { + type: "doc", + label: "Solana", + id: "how-to/use-non-evm-networks/solana" + }, { type: "category", - label: "Use Starknet", + label: "Starknet", link: { type: "doc", id: "how-to/use-non-evm-networks/starknet/index" }, items: [ { diff --git a/wallet/how-to/use-non-evm-networks/index.md b/wallet/how-to/use-non-evm-networks/index.md index f0afe6f14dc..0e7e5b6f310 100644 --- a/wallet/how-to/use-non-evm-networks/index.md +++ b/wallet/how-to/use-non-evm-networks/index.md @@ -6,17 +6,20 @@ import CardList from "@site/src/components/CardList" # Use non-EVM networks -You can interact with users' accounts on non-EVM networks by connecting to existing -[MetaMask Snaps](https://metamask.io/snaps/). - Non-EVM networks are blockchain networks that are not compatible with the Ethereum Virtual Machine (EVM). Non-EVM dapps and MetaMask can't directly interact with each other. -By connecting to dedicated non-EVM Snaps, you can extend the functionality of MetaMask and integrate non-EVM networks into your existing MetaMask workflow. +By connecting to third-party libraries or dedicated non-EVM [Snaps](https://metamask.io/snaps/), you can extend the functionality of MetaMask and integrate non-EVM networks into your existing MetaMask workflow. -MetaMask provides Snaps for the following networks: +MetaMask supports the following non-EVM networks: Date: Tue, 25 Mar 2025 13:48:06 -0700 Subject: [PATCH 2/8] update what's new --- docs/whats-new.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/whats-new.md b/docs/whats-new.md index 5394bd87651..8ca0d3382c9 100644 --- a/docs/whats-new.md +++ b/docs/whats-new.md @@ -11,6 +11,8 @@ of the [MetaMask developer page](https://metamask.io/developer/). ## March 2025 +- Documented [Solana](/wallet/how-to/use-non-evm-networks/solana) Wallet Standard support. + ([#1940](https://github.com/MetaMask/metamask-docs/pull/1940)) - Added a tutorial for [sending a transaction using Viem](/services/tutorials/ethereum/send-a-transaction/send-a-transaction-viem). ([#1920](https://github.com/MetaMask/metamask-docs/pull/1920)) - Documented [Base subscription methods](/services/reference/base/json-rpc-methods/subscription-methods). ([#1916](https://github.com/MetaMask/metamask-docs/pull/1916)) From b6d9090402360d4a392eaf0719ae8f8d5cdcfc78 Mon Sep 17 00:00:00 2001 From: Alexandra Tran Date: Thu, 10 Apr 2025 16:08:50 -0700 Subject: [PATCH 3/8] update whats new --- docs/whats-new.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/whats-new.md b/docs/whats-new.md index cc6a05c4339..d6a6567de27 100644 --- a/docs/whats-new.md +++ b/docs/whats-new.md @@ -11,13 +11,13 @@ of the [MetaMask developer page](https://metamask.io/developer/). ## April 2025 +- Documented [Solana](/wallet/how-to/use-non-evm-networks/solana) Wallet Standard support. + ([#1940](https://github.com/MetaMask/metamask-docs/pull/1940)) - Documented [Snaps bundle analyzer option](/snaps/reference/cli/subcommands/#analyze). ([#1955](https://github.com/MetaMask/metamask-docs/pull/1955)) ## March 2025 -- Documented [Solana](/wallet/how-to/use-non-evm-networks/solana) Wallet Standard support. - ([#1940](https://github.com/MetaMask/metamask-docs/pull/1940)) - Added a tutorial for [sending a transaction using Viem](/services/tutorials/ethereum/send-a-transaction/send-a-transaction-viem). ([#1920](https://github.com/MetaMask/metamask-docs/pull/1920)) - Documented [Base subscription methods](/services/reference/base/json-rpc-methods/subscription-methods). ([#1916](https://github.com/MetaMask/metamask-docs/pull/1916)) From ed97731bdca19e83dd38d35c21657f38d7d370e0 Mon Sep 17 00:00:00 2001 From: Alexandra Tran Date: Wed, 30 Apr 2025 10:30:38 -0700 Subject: [PATCH 4/8] add third-party libraries and devnet --- wallet/how-to/use-non-evm-networks/solana.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/wallet/how-to/use-non-evm-networks/solana.md b/wallet/how-to/use-non-evm-networks/solana.md index 94baa3ec517..712a8b3a27b 100644 --- a/wallet/how-to/use-non-evm-networks/solana.md +++ b/wallet/how-to/use-non-evm-networks/solana.md @@ -5,6 +5,14 @@ description: Interact with users' Solana accounts in MetaMask. # Solana [Solana](https://solana.com/) is a high-performance, non-EVM network that provides fast transaction speeds and low fees. +You can interact with users' Solana accounts in MetaMask using the [Wallet Standard](#wallet-standard) or [third-party libraries](#third-party-libraries) for Solana dapps. + +:::note +MetaMask supports both Solana Mainnet and Devnet. +After adding Solana to MetaMask, [show test networks](https://support.metamask.io/configure/networks/how-to-view-testnets-in-metamask/) to view Solana Devnet. +::: + +## Wallet Standard MetaMask implements the [Wallet Standard](https://github.com/wallet-standard/wallet-standard), so MetaMask is supported out-of-the-box for Solana dapps that use the Wallet Standard or that integrate Solana's [Wallet Adapter](https://github.com/anza-xyz/wallet-adapter/blob/master/APP.md). @@ -14,3 +22,11 @@ Learn more in Solana's [Interact With Wallets](https://solana.com/developers/cou With the Wallet Standard, MetaMask does not appear as a connection option for users that don't already have MetaMask installed. Ask the MetaMask team on [Discord](https://discord.gg/consensys) if you need support for a custom integration. ::: + +## Third-party libraries + +Several third-party libraries for Solana dapps detect and handle MetaMask out-of-the-box, including: + +- [Dynamic](https://docs.dynamic.xyz/introduction/welcome) +- [Privy](https://docs.privy.io/welcome) +- [Reown](https://docs.reown.com/overview) From 3a1348f2baa54ae6ef49e4219fbdf658674b8b47 Mon Sep 17 00:00:00 2001 From: Alexandra Tran Date: Wed, 30 Apr 2025 10:38:30 -0700 Subject: [PATCH 5/8] update what's new description --- docs/whats-new.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/whats-new.md b/docs/whats-new.md index 15232adfe67..24386007e61 100644 --- a/docs/whats-new.md +++ b/docs/whats-new.md @@ -11,7 +11,7 @@ of the [MetaMask developer page](https://metamask.io/developer/). ## May 2025 -- Documented [Solana](/wallet/how-to/use-non-evm-networks/solana) Wallet Standard support. +- Documented [Solana](/wallet/how-to/use-non-evm-networks/solana) dapp support via the Wallet Standard and third-party libraries. ([#1940](https://github.com/MetaMask/metamask-docs/pull/1940)) ## April 2025 From 4e31b2ed6a38a9ca8ad5194886cc44b9ef0da5de Mon Sep 17 00:00:00 2001 From: Alexandra Tran Date: Wed, 14 May 2025 11:03:46 -0700 Subject: [PATCH 6/8] devnet only supported on flask --- wallet/how-to/use-non-evm-networks/solana.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/wallet/how-to/use-non-evm-networks/solana.md b/wallet/how-to/use-non-evm-networks/solana.md index 712a8b3a27b..1dc2842e10c 100644 --- a/wallet/how-to/use-non-evm-networks/solana.md +++ b/wallet/how-to/use-non-evm-networks/solana.md @@ -7,9 +7,10 @@ description: Interact with users' Solana accounts in MetaMask. [Solana](https://solana.com/) is a high-performance, non-EVM network that provides fast transaction speeds and low fees. You can interact with users' Solana accounts in MetaMask using the [Wallet Standard](#wallet-standard) or [third-party libraries](#third-party-libraries) for Solana dapps. -:::note -MetaMask supports both Solana Mainnet and Devnet. -After adding Solana to MetaMask, [show test networks](https://support.metamask.io/configure/networks/how-to-view-testnets-in-metamask/) to view Solana Devnet. +:::note Supported Solana networks +MetaMask supports Solana Mainnet. +Solana Devnet is only supported on [MetaMask Flask](/snaps/get-started/install-flask). +After adding Solana to MetaMask Flask, [show test networks](https://support.metamask.io/configure/networks/how-to-view-testnets-in-metamask/) to view Solana Devnet. ::: ## Wallet Standard From ec13bd540b7662bcca9ca8aef1977da7dadf8340 Mon Sep 17 00:00:00 2001 From: Alexandra Tran Date: Fri, 16 May 2025 14:25:27 -0700 Subject: [PATCH 7/8] add extension only note --- wallet/how-to/use-non-evm-networks/solana.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/wallet/how-to/use-non-evm-networks/solana.md b/wallet/how-to/use-non-evm-networks/solana.md index 1dc2842e10c..9be2ee32ef0 100644 --- a/wallet/how-to/use-non-evm-networks/solana.md +++ b/wallet/how-to/use-non-evm-networks/solana.md @@ -13,6 +13,11 @@ Solana Devnet is only supported on [MetaMask Flask](/snaps/get-started/install-f After adding Solana to MetaMask Flask, [show test networks](https://support.metamask.io/configure/networks/how-to-view-testnets-in-metamask/) to view Solana Devnet. ::: +:::info Extension only +Connecting your dapp to Solana in MetaMask is currently only available on the extension. +Mobile support is coming soon. +::: + ## Wallet Standard MetaMask implements the [Wallet Standard](https://github.com/wallet-standard/wallet-standard), so MetaMask is supported out-of-the-box for Solana dapps that use the Wallet Standard or that integrate Solana's [Wallet Adapter](https://github.com/anza-xyz/wallet-adapter/blob/master/APP.md). From 1ea18c6103b870cadff71871371e33463ff4ed8d Mon Sep 17 00:00:00 2001 From: Alexandra Tran Date: Sat, 17 May 2025 10:29:50 -0700 Subject: [PATCH 8/8] highlight native solana support --- wallet/how-to/use-non-evm-networks/index.md | 12 ++++++++---- wallet/index.md | 4 +++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/wallet/how-to/use-non-evm-networks/index.md b/wallet/how-to/use-non-evm-networks/index.md index 0e7e5b6f310..0c4ee034656 100644 --- a/wallet/how-to/use-non-evm-networks/index.md +++ b/wallet/how-to/use-non-evm-networks/index.md @@ -7,8 +7,12 @@ import CardList from "@site/src/components/CardList" # Use non-EVM networks Non-EVM networks are blockchain networks that are not compatible with the Ethereum Virtual Machine (EVM). -Non-EVM dapps and MetaMask can't directly interact with each other. -By connecting to third-party libraries or dedicated non-EVM [Snaps](https://metamask.io/snaps/), you can extend the functionality of MetaMask and integrate non-EVM networks into your existing MetaMask workflow. +MetaMask provides different types of support for some non-EVM networks: + +- **Native support** - MetaMask implements a standard interface for [Solana](solana.md) dapps to natively connect to MetaMask. + Several third party libraries for Solana also detect and handle MetaMask by default. +- **Non-EVM Snaps** - MetaMask provides dedicated non-EVM [Snaps](https://metamask.io/snaps/) that dapps can use to interact with users' non-EVM accounts in MetaMask. + For example, you can connect to [Starknet](starknet/index.md) in this way. MetaMask supports the following non-EVM networks: @@ -18,13 +22,13 @@ MetaMask supports the following non-EVM networks: href: "solana", title: "Solana", description: - "High-performance non-EVM network.", + "High-performance non-EVM network. MetaMask natively supports connecting to Solana.", }, { href: "starknet", title: "Starknet", description: - "Layer 2 network for Ethereum using ZK rollups.", + "Layer 2 network for Ethereum using ZK rollups. MetaMask supports connecting to Starknet via a Snap.", }, ]} /> diff --git a/wallet/index.md b/wallet/index.md index e04c13e975e..40e91e257ee 100644 --- a/wallet/index.md +++ b/wallet/index.md @@ -13,7 +13,7 @@ deeplinking, see the [**MetaMask SDK** documentation](/sdk). The Wallet API is MetaMask's core interface for web dapps to interact with the MetaMask browser extension. With the Wallet API, you can: -- Interact with users' Ethereum accounts. +- Interact with users' EVM and non-EVM accounts. - Send transactions and sign messages. - Listen to account and network changes. @@ -22,6 +22,8 @@ interact with users' EVM accounts, and implements standard interfaces like [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) for Ethereum provider methods and [EIP-6963](https://eips.ethereum.org/EIPS/eip-6963) for wallet detection. +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) ## Wallet API vs. SDK