Oh Snap! It's Metamask!

Olaf Tomalka, Senior Engineer at Metamask

Hassan Malik, Senior Engineer at Metamask

May 23rd, 9:00 - 17:00

The goal

Build your own Metamask Snap from the ground up into a working product - in the case of this workshop, supporting Bitcoin transactions using Metamask's accounts.


Snaps is a system that allows anyone to safely expand the capabilities of MetaMask. A "snap" is a program that we run in an isolated environment that can customize the wallet experience. For example, a snap can add new APIs to MetaMask, add support for different blockchain protocols, or modify existing functionality using internal APIs. Snaps is a new way to create web3 end user experiences, by modifying MetaMask in ways that were impossible before.

Learn more about Snaps in the official documentation

What will attendees learn?

  • Learn how the internals of Bitcoin work
  • Will be able to build a fully working Metamask Snap
  • Understand the basics of cryptography needed to manage private keys of a blockchain

What will attendees do?

  • Extend the functionality of Metamask
  • Build a working example password manager Snap
  • Build a working Bitcoin Snap

What will attendees be able to do with the newly acquired knowledge?

  • Able to support their own use-cases and custom blockchains inside of Metamask

Who is it for

What knowledge is required from the attendees?

This workshop is a programming workshop requiring intermediate level of skills.


  • Medium Javascript knowledge
  • Basics of NodeJS, NPM and Git
  • Have Google Chrome installed

Nice to have:

  • Typescript knowledge
  • Basics of blockchain internals
  • Web3 Provider APIs knowledge 
  • Previous usage of Metamask

  • Duration

  • Introduction and setting up environment

  • 30 min

  • Learning basics by building a password manager Snap

  • 1 h 15 min

  • Coffee break

  • 15 min

  • Developing Bitcoin Snap

  • 1 hr

  • Lunch break

  • 1 hr

  • Developing Bitcoin Snap

  • 1 hr 15 min

  • Coffee break

  • 15 min

  • Developing Bitcoin Snap

  • 1 hr

  • Open development with help of our engineers and questions

  • 1 hr

  • Workshop is in 🇬🇧 English language.

  • You need to bring a laptop.

  • Lunch and coffee breaks are included in the price

Meet your lecturers

Olaf Tomalka

In Ethereum since 2016, currently working with Metamask, previously worked with Ethereum Foundation on Solidity compiler. Programmer by Passion

Hassan Malik

In the Ethereum space since late 2018, currently w/MetaMask, previously worked at Airswap.

UBIK - Croatian Association for Blockchain and Cryptocurrencies, is a non-profit organization for advancing usage of blockchain technology and cryptocurrency.