Skip to main content

Using Remix to Deploy Smart Contracts

This tutorial will guide you through deploying a smart contract on Status Network testnet using the Remix IDE. Remix is a browser-based IDE that's perfect for quick development and testing.

Prerequisites​

Before you begin, ensure you have:

  • Web Browser: A modern web browser like Chrome or Firefox
  • MetaMask: Install the MetaMask browser extension
  • Testnet ETH: You'll need Status Network testnet ETH
    • Get Status Network testnet ETH from our Faucet
  • Network Configuration: Add Status Network testnet to MetaMask following our Add Network guide

Steps​

1. Open Remix IDE​

Visit remix.ethereum.org in your browser.

2. Create a New File​

  1. Click the "File Explorer" icon (first icon on the left sidebar)
  2. Click the "+" button to create a new file
  3. Name it HelloWorld.sol

3. Write the Smart Contract​

Copy and paste the following code into HelloWorld.sol:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

contract HelloWorld {
string public greet = "Hello, Status Network!";

function setGreet(string memory _greet) public {
greet = _greet;
}

function getGreet() public view returns (string memory) {
return greet;
}
}

4. Compile the Contract​

  1. Click the "Solidity Compiler" icon (second icon on the left sidebar)
  2. Select compiler version "0.8.24"
  3. Click "Compile HelloWorld.sol"
  4. Ensure compilation succeeds (you'll see a green checkmark)

5. Deploy the Contract​

  1. Click the "Deploy & Run Transactions" icon (fourth icon on the left sidebar)
  2. In the "Environment" dropdown, select "Injected Provider - MetaMask"
  3. MetaMask will prompt you to connect - ensure Status Network testnet is selected
  4. Click "Deploy"
  5. Confirm the transaction in MetaMask
  6. Wait for the transaction to be confirmed

6. Interact with Your Contract​

Once deployed, you'll see your contract under "Deployed Contracts":

  1. Expand the contract interface
  2. You can:
    • Click "greet" to read the current greeting
    • Enter a new greeting in the "setGreet" field and click the button to update it
    • Click "getGreet" to read the greeting again

Troubleshooting​

Common Issues​

  1. Transaction Failed

    • Check that you're connected to Status Network testnet
  2. Contract Not Found

    • Wait a few minutes for the explorer to index your contract
    • Double-check the contract address
  3. Compilation Errors

    • Verify the compiler version matches the pragma statement
    • Check for any syntax errors highlighted in Remix

Support​

If you encounter any issues:

Additional Resources​