> For the complete documentation index, see [llms.txt](https://docs.xenea.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xenea.io/testnet-archive/how-to-deploy-to-smart-contracts/remix-ide.md).

# Remix IDE

## **Remix IDE**

Remix IDE is an open-source web and desktop application that enables a fast development cycle and offers a variety of intuitive plugins. It is used throughout the entire contract development process and serves as a playground for learning and teaching Ethereum.

We're going to use Remix to write all of the code in this tutorial. Head on over to Remix in a new tab in order to follow along with this tutorial.

Visit: <https://remix.ethereum.org/>

### **Writing your smart contract**

1. Create a "New File" under contracts with name HelloWorld.sol.

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2F8yadE3pcRI5pD160KvKo%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-25%2016.26.25.png?alt=media&amp;token=8d0eb926-da58-42d5-8421-b75801d9c7ea" alt="" width="554"><figcaption></figcaption></figure>

2. Copy and paste the code below to HelloWorld.sol file.

```solidity
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.7;

contract helloWorld {
  string public text = "Hello World!";

  function callHelloWorld() public view returns (string memory) {
    return text;
  }
}
```

### Compiling

3. Compile HelloWorld.sol.

In the left side menu, select the `Solidity compiler` tab. The `SOLIDITY COMPILER` menu will be active.&#x20;

Click on the `Compile helloWorld.sol` button to compile the loaded smart contract HelloWorld.

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2F5JxfMOrbychiDuPl3Myf%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-26%201.58.09.png?alt=media&amp;token=f12c16a0-ddcb-4440-965a-2203d511f149" alt="" width="549"><figcaption></figcaption></figure>

If the compilation is successful, a green icon will appear near the `Solidity compiler` button.

### Deploying <a href="#deploying-to-shardeum" id="deploying-to-shardeum"></a>

4. Connect Remix to MetaMask

Interactions with CROSSVALUE EVM are carried out through MetaMask. In the left sidebar menu, select `Deploy & run transactions`. The `DEPLOY & RUN TRANSACTIONS` menu will become active.

Choose the `Injected Provider - Metamask` environment to connect Remix with an active account in MetaMask. Make sure that your MetaMask wallet is set to display the Kura Testnet before you do this step.

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2FlTekegyuI6kP0w7GjVgQ%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-26%202.09.43.png?alt=media&amp;token=a85d4ac4-f145-4c8a-bfab-7a9bfb3e18b1" alt="" width="552"><figcaption></figcaption></figure>

5. Deploy the compiler contract.

In our case, there is only one smart contract to deploy, therefore it is automatically selected from the dropdown and Remix will automatically generate a transaction.

The `Account` field will display the amount in the wallet account. This data is taken from MetaMask.

Click `Deploy`.

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2FRKFhH4RXFiczV78HkJZc%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-26%202.18.44.png?alt=media&amp;token=9a40a209-ba98-44a9-9e94-d9a0829fa566" alt="" width="551"><figcaption></figcaption></figure>

MetaMask will send a notification in the form of a pop-up window to confirm the transaction. Click `Confirm` to execute it.

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2F1OujblOLxtT4KXXGTgCE%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-26%202.22.58.png?alt=media&amp;token=ff8168b6-24f5-48a0-bf4f-2d30cc6d9100" alt="" width="540"><figcaption></figcaption></figure>

After successfully deploying the smart contract, you will see a message containing the name and address of the smart contract where it was uploaded.

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2FF5yxJDlKJCEy3N27OwUU%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-26%202.34.14.png?alt=media&amp;token=304f1f18-a8bc-4693-ac7c-6e7d39e337fb" alt="" width="552"><figcaption></figcaption></figure>

If all the steps have been completed successfully, a green icon will appear near the `Deploy & run transactions` button.

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2Fzabuq2tk9qMLUPl6QqKs%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-26%202.38.40.png?alt=media&amp;token=dd3aba64-7f8c-42c3-9fb9-822bb09b70e9" alt=""><figcaption></figcaption></figure>

Congratulations! You can now call methods of the helloWorld smart contract deployed on the Solana network. (The image below shows the result of the smart contract, the text string "Hello World!")

<figure><img src="https://2276277239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FV0mW3n7q1sGjuyyHSxIb%2Fuploads%2FSYNdMzVymeeSrMAgj95X%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202024-04-26%202.42.45.png?alt=media&amp;token=d8f7dfc5-576c-4ca1-81a2-e91469dd4999" alt="" width="549"><figcaption></figcaption></figure>
