# Deploy Smart Contract on MEVM

Finally, it's time to deploy your first smart contract on Metaverse.Network Alpha Testnet network!&#x20;

In this tutorial, you will deploy a basic ERC20 token using Remix.



### 1. Create ERC20 smart contract using Openzeppelin Contract Library

&#x20;Visit [Openzeppelin](https://www.openzeppelin.com/contracts), select ERC20 as the smart contract you want to build, and feel free to change the Name, Symbol, Initial Supply and some other features if you wish. We would go to a super simple version of ERC20

Name: Test

Symbol: TST

Initial Supply: 100000

Decimals: 18 (only editable in code)

<figure><img src="https://4228594571-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkExsFNF7FtilZrcMbqis%2Fuploads%2FyRvuMl18d5aYFdlVg6Up%2FCursor_and_OpenZeppelin___Contracts.png?alt=media&#x26;token=459ad367-873f-4af0-81fc-e00d4c70a7c1" alt=""><figcaption></figcaption></figure>

Here is the code it will generated.

```solidity
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract Test is ERC20 {
    constructor() ERC20("Test", "TST") {
        _mint(msg.sender, 100000 * 10 ** 18);
    }
}
```



### 2. Deploy ERC20 Smart contract using Remix

#### Compile Smart Contract with Remix

Open [Remix](https://remix.ethereum.org/), then **Create a New File** and name it ERC20.sol, paste the code example into your file.

_We also created a quick link for you to interact with Remix, please note that you need to change decimals() to 18 to get the code compiled. Open_ [_Remix_](https://remix.ethereum.org/?#code=Ly8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVApwcmFnbWEgc29saWRpdHkgXjAuOC4yMDsKCmltcG9ydCAiQG9wZW56ZXBwZWxpbi9jb250cmFjdHNANS4wLjAvdG9rZW4vRVJDMjAvRVJDMjAuc29sIjsKCmNvbnRyYWN0IFRlc3QgaXMgRVJDMjAgewogICAgY29uc3RydWN0b3IoKSBFUkMyMCgiVGVzdCIsICJUU1QiKSB7CiAgICAgICAgX21pbnQobXNnLnNlbmRlciwgMTAwMDAwICogMTAgKiogZGVjaW1hbHMoKSk7CiAgICB9Cn0K\&lang=en\&optimize=false\&runs=200\&evmVersion=null\&version=soljson-v0.8.22+commit.4fc1097e.js)&#x20;

At this stage, you should be able to compile the ERC20 smart contract. If you compiled successfully, you will see the screenshot below.

<figure><img src="https://4228594571-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkExsFNF7FtilZrcMbqis%2Fuploads%2FEAKpLBUwTklE313PwX4z%2FRemix_-_Ethereum_IDE.png?alt=media&#x26;token=29a6c8cc-5499-401d-b306-3fbec66fc4a1" alt=""><figcaption></figcaption></figure>

#### Deploy Smart Contract 🎉

Now, it's an exciting time to get your first smart contract deployed on blockchain.&#x20;

Step 1: Select the Deployment icon on Remix

Step 2: Select Environment: Injected Provider - MetaMask (you tell Remix to use Environment from MetaMask which is Metaverse.Network Alpha Tetsnet)

Step 3: Click **Deploy** (make sure you select the account that has Testnet NEER balance to deploy)

<figure><img src="https://4228594571-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkExsFNF7FtilZrcMbqis%2Fuploads%2FbfLqCh6T9CE0FRuzMqCo%2FRemix_-_Ethereum_IDE-deploy.png?alt=media&#x26;token=d6d8d4f3-767d-4c4a-bcd7-350b135d0da4" alt=""><figcaption></figcaption></figure>

Note: Recently, Remix has only recently supported Shanghai Upgrade. Your deployment may fail due to incompatible gas calculations.&#x20;

The dev team is currently working to upgrade our Testnet soon.
