Author: gin-lsl, ZAN Team
Source: ZAN
MetaMask Snaps
MetaMask Snaps is a project with ambitious long-term goals. However, beyond its idealistic facade, the author prefers to think of it as mini-programs for the Web3 world, or perhaps give it a fancier name: dApplet.
As developers, especially those in China, the concept isn’t unfamiliar. In recent years, we often hear about “ecosystem building” and “super apps” in internet jargon, where corporate giants seek to increasingly close off the internet to transform from service providers to standard setters.
Now, this trend seems to be drifting slowly into the Web3 domain.
As of June 2024, despite Snaps having been around for nearly a year and conceptualized for at least four, ordinary users have scant knowledge of it. Even friends deeply involved in the cryptocurrency market open MetaMask daily like second nature but remain oblivious to MetaMask Snaps. However, after explaining it as “like mini-programs,” a smile of understanding often appears on their faces (most are frontend developers).
This scenario vaguely echoes the early days of WeChat mini-programs, initially low in usage due to unclear entry points. Usage surged only after placing mini-programs on the homepage for easy access. If MetaMask aims to build an ecosystem, attracting users through this gateway will be a crucial challenge.
Mini-programs have sparked ongoing debates in the internet industry since their inception. Frontend engineers often dismiss them as tools for internet giants to monopolize traffic and ecosystem, offering little to technological advancement. How much will Web3’s Snaps contribute to the community? Browsing MetaMask’s documentation increasingly suggests future Snap developers will face significant challenges.
Despite MetaMask launching the public test version of Snaps nearly a year ago, the number of available Snaps listed on its official website as of June 2024 remains relatively low, totaling just 68. Even before formal testing, the concept of Snaps was introduced around 2020, providing ample time for Web3 companies and developers to grasp its potential.
Snaps Types
While I haven’t encountered dedicated Snap developers yet, there are many small program developers from Web2 around me who find the development experience lacking. Although they use the frontend ecosystem, it’s a stripped-down version. Varying technical capabilities and document qualities among vendors lead developers through various platform pitfalls before earning the label “experienced.”
Returning to Web3, Snaps likely face similar challenges due to security considerations. Operating within a secure context, Snaps use “Secure ECMAScript,” a restricted version of JavaScript API, e.g., without access to DOM, Node.js, or browser plugin APIs.
Due to understandable security concerns, basic Snaps are limited in functionality. Most features require specific permissions during installation, including lifecycle, transaction, signature, and CRON:
https://docs.metamask.io/snaps/reference/permissions/#eth_accounts
Compared to the thriving Web3 ecosystem, the available Snaps are few. MetaMask categorizes them accordingly.
Ideas
MetaMask aims to expand its domain across other chain platforms through Snaps. However, realizing this vision may prove challenging. In the Web2 realm, while many apps offer mini-program versions, they often lag behind in service quality and new feature updates, frequently redirecting users to their own apps. With the explosive growth of mini-programs, more apps strive to participate, introducing their own mini-program platforms, reinforcing their moats, and centralizing the entire web world.
Capital in the Web3 realm isn’t necessarily more adept than in Web2. If Snaps develop well, more wallets are likely to follow. If every vendor builds its “Snaps” ecosystem, it would almost eliminate unique ecosystems, aligning with their “decentralization” label.
Perhaps we can predict various “Snaps-like” entities emerging in the future, with significant platform differences, requiring developers to ensure compatibility across platforms, leading to an unbearable situation. Thus, Snaps Standards emerge amid developer anticipation, accompanied by various “SIPs” for community discussion, fostering a thriving environment…
Apologies, perhaps I lack confidence in MetaMask Snaps. Regardless, it’s a product built by passionate developers aiming to solve real problems, not a scheme initiated by financial experts.
For most current MetaMask users, however, Snaps aren’t yet a crucial feature. MetaMask may need to focus more on effective promotion moving forward.