Extend the functionality of MetaMask using Snaps
Snaps is an open source system that allows anyone to safely extend the functionality of MetaMask, creating new web3 end user experiences.
Get started by installing Snaps.
- Snaps is pre-release software.
- To learn how to integrate your dapp with MetaMask, visit the MetaMask wallet developer documentation.
What is a snap?
A snap is a JavaScript program run in an isolated environment that customizes the wallet experience. Snaps have access to a limited set of capabilities, determined by the permissions the user granted them during installation.
What can you do with a snap?
A snap can add new API methods to MetaMask, add support for different blockchain protocols, or modify existing functionalities using the Snaps JSON-RPC API.
Features include:
Dialogs
Display custom alert, confirmation, or prompt screens in MetaMask.
Notifications
Notify users directly in MetaMask, or in their OS.
Encrypted storage
Securely store and manage data on the user's device.
Non-EVM chain support
Control non-EVM accounts and assets in MetaMask.
Transaction insights
Provide transaction insights in MetaMask's pre-transaction window.
Cron jobs
Schedule periodic actions for your users.
Custom UI
Display custom UI in MetaMask using a set of pre-defined components, including inline Markdown.
Network access
Make API calls using fetch()
.
Questions?
If you have questions about using Snaps or want to propose a new feature, you can interact with the Snaps team and community on GitHub discussions and the Snaps channel on Consensys Discord.