Flareの開発環境をRemixで構築

2023年8月14日

概要

Remix IDEは、ダウンロード、アカウント作成、ログインを必要とせず、ブラウザから直接Solidityスマートコントラクトを記述できる強力なオープンソースツールです。

この記事では、Remix IDE と MetaMask ウォレットを使って Hello World コントラクトを Flare ブロックチェーンにデプロイする手順の公開です。

Remixで新しいファイルを作成

  1. Remix IDEにアクセス後、New Fileボタンをクリック
  2. ファイル名をHelloWorld.solと命名
  3. contractsフォルダにドラッグ&ドロップ

コントラクトの書き込み

以下のスマート・コントラクトのコードをコピー、作成したHelloWorld.solファイルに貼り付けます。

// SPDX-License-Identifier: MIT

// Specifies the version of Solidity, using semantic versioning.
pragma solidity 0.8.17;

// Defines a contract named `HelloWorld`
contract HelloWorld {

   // Declares a state variable `message` of type `string`.
   string public message;

   // Constructors are used to initialize the contract's data.
   constructor(string memory initMessage) {
      // Accepts a string argument `initMessage`.
      message = initMessage;
   }

   // A public function that accepts a string argument.
   function update(string memory newMessage) public {
      message = newMessage;
   }
}

Remixでコントラクトのコンパイル

  1. Solidity Compiler タブ (左側) に移動
  2. コンパイラ バージョン 0.8.17 を選択
  3. [Compile HelloWorld.sol] ボタンをクリック

コンパイルに成功すると、コンパイラ・タブのボタンに緑色のチェックマークが表示されます。

Flare Testnetでの展開

FlareのテストネットワークであるCoston2ネットワークにスマートコントラクトをデプロイします

スマートコントラクトをFlareのメインネットワークにデプロイすると、(ガス料金などの)コストがかかるだけでなく、変更できなくなります。そのため、スマート・コントラクトを最初にテスト・ネットワークへのデプロイを強く推奨。

Remixのデプロイメントに取り掛かる前に:

  • MetaMaskウォレットにCoston2テストネットワークを追加
  • MetaMask Walletガイドにその方法が記載されています。
  • ネットワーク設定のページにある Coston2 の値を使ってください。
  • Coston2 ネイティブトークン $C2FLR がガス料金の支払いに十分であることを確認
  • Coston2 Faucetにアクセスし、$C2FLRを要求
  • Deploy & Run Transactionsタブ(最後のタブ)に移動
  • ENVIRONMENTドロップダウンからInjected Provider - Metamaskを選択する。必要に応じて、MetaMaskで受信した接続要求を受け入れる。
  • Deployボタンをクリック
  • MetaMaskでCONTRACT DEPLOYMENTトランザクションを確認

Flareメインネットワークにコントラクトをデプロイするプロセスは上記と同じです。
MetaMaskでFlare Networkを選択後、$FLRトークンを使うだけです

コントラクトの対話

これで、コントラクトは、意図どおりの動作を確認できる。

  • 下にあるDeployed Contractsセクションで、HELLOWORLDコントラクトを展開し、そのメソッドとデータを見る:
    • update メソッド。
    • messageパブリック変数。
  • updateボタンの横のボックスにメッセージを入力後、ボタンをクリック
  • MetaMaskでデプロイメントトランザクションを確認
  • メッセージボタンをクリック
  • 前に入力したメッセージが戻ってくることを確認
  • コントラクトが更新されたことを確認

まとめ

Web3の開発にはRemixの操作方法の理解が必要です。まず、理解するためにFlareから学ぶことがいいです。F-AssetsやLayerCakeの学習もできるのでおすすめです。

-EVM