MetaMask is a cryptocurrency wallet developed as a browser extension. It enables users to interact with blockchains — most notably Ethereum — allowing them to send transactions, create addresses, and swap cryptocurrencies. It is especially useful when one intends to work with DeFi platforms, or any dapp in general.
What You’ll Learn
- What MetaMask is
- How MetaMask works
- The platforms supported by MetaMask (browsers and blockchains)
- How to install MetaMask
- What functions MetaMask provides
- How to use MetaMask to interact with dapps
How MetaMask Works
MetaMask provides a bridge between your browser and a blockchain. It is marketed as an “Ethereum Wallet in your Browser”, though the app can support other blockchains as well; there is no argument that it is mostly used to interact with the Ethereum network.
You can find all supported platforms on the Download page. At the time of writing, the extension is available for Chrome, Firefox, Brave, and Edge; there are also mobile apps for iOS and Android.
By design, MetaMask’s purpose is to interact with the Ethereum blockchain. However, you can work with other networks as well, if developers have added support; for example, you can use MetaMask to interact with the Avalanche mainnet.
How to Install MetaMask
First of all, download and install the extension from the here. Once the installation completes, a new tab will open in your browser:
Click the Get Started button.
Click the Create Wallet button. MetaMask will then ask you if you want to help improve the app by providing usage data. Make your choice and move on to creating your password:
Type up a secure password, agree to the Terms, and click the Create button:
This is the most important step so pay attention. There is no forgot-my-password action in MetaMask, no reset password email, no way to recover your vault aside from your secret phrase. As suggested by MetaMask, you need to store the phrase securely, be it on an external drive, or on a piece of paper; make sure you’re the only one that has access. Once you have backed up your secret phrase, click the Next button:
In the final step of the vault creation process you are required to arrange your secret phrase in the exact order. The purpose of this step is to make sure that you have backed up your phrase. Arrange the words in the correct order and click the Confirm button. Congratulations, you’ve successfully created your MetaMask vault.
How to Work With MetaMask
Before we elaborate on the functions of MetaMask, let’s first do a walk around.
Click on the tiny fox icon in your browser extension list:
This is the general interface of MetaMask, the “homepage” of the extension.
The dropdown at the top allows you to switch between networks. By default, the Ethereum mainnet and four testnets — Ropsten, Kovan, Rinkeby, and Goerly — are available. There’s also a Custom RPC option, which can be used to set up access to another network, e.g., Avalanche.
The circle icon next to the network selection dropdown allows you to manage your MetaMask accounts:
You can have as many addresses as you need in your vault. You can create new ones, or you can import existing ones with a private key or a JSON file. You can also connect MetaMask to a hardware wallet, e.g., Ledger or Trezor.
There’s three things you can do with MetaMask:
- Send and receive cryptocurrency
- Buy and swap cryptocurrency
- Interact with dapps
Sending & Receiving Cryptocurrency
Receiving cryptocurrency is self-evident — copy your account address by clicking on it and make sure the sender uses it as the recipient.
If you want to send cryptocurrency, you need to click the Send button from the MetaMask interface:
You can either paste an address or select an address from your vault.
In the next step, select the asset you want to send — you can send ETH and ERC20 tokens — and the amount you want to send, as well as the gas price you are willing to pay. Click Next:
Review the transaction and click Confirm. You can follow the progress of the transaction on the Activity tab:
Buying & Swapping Cryptocurrency
The two functions are accessible through the Buy and Swap buttons.
You can buy ETH and load it directly into your MetaMask account via Wyre. Just click the Buy button and follow the instructions.
To swap assets, click the Swap button:
In the first step you need to specify the assets and the amount you will be swapping. You can control the slippage in the Advanced Options (it is collapsed by default). Click Review Swap when satisfied with the parameters (you will see how much you will get of the asset you are purchasing in the third step):
In the second step you need to wait for MetaMask to get a quote for the swap from seven different exchanges:
- 0x API
Once it finishes it will automatically move onto the next step:
This is where you can review the entire trade. You can also review the quotes from all exchanges by clicking on the light blue heading:
Once you are satisfied with the trade parameters, click the Swap button and wait for the transaction to be confirmed.
Interacting With Dapps
In order to interact with a dapp you first need to connect to it. Dapps usually have a “Connect to a wallet” button which opens a modal panel. Select MetaMask from the options; a window will then open:
Select the accounts you want the dapp to have access to. Click Next to see what permissions you will be granting:
In this example I am connecting to Uniswap, and I can see that I am granting viewing permissions to the exchange (be mindful and approve only trusted dapps). Click Connect to complete the process.
If you’d later like to revoke access to a certain dapp, you need to click the Connected text on the MetaMask interface:
From there you can see all accounts connected to the dapp. Click the kebab menu and select the “Disconnect this account” option to revoke access.
Once connected to MetaMask, you can interact with a dapp. For instance, you can swap cryptocurrency on Uniswap, join a liquidity pool on SushiSwap, farm BNT on Bancor, open a leveraged position on Alpha Homora, etc.
The interaction happens through transactions that are generated by the dapp and sent to the Ethereum blockchain via MetaMask. In essence, all you need to do to interact with dapps once you connect them to your MetaMask is to approve transactions.
MetaMask is a powerful tool that enables seamless interaction with blockchain-based apps. It is secure in that you are in full control of your vault, keeping up with the core values of decentralization. It enables fundamental functions of Ethereum and other blockchains from the comfort of your browser (or mobile phone), allowing users to buy, swap, and store cryptocurrency, as well as interact with dapps.