本文へスキップ
このページは英語からの機械翻訳を使用しており、誤りや不明瞭な表現が含まれている可能性があります。最も正確な情報については、オリジナルの英語版をご覧ください。頻繁な更新のため、一部のコンテンツはオリジナルの英語になっている可能性があります。Crowdinでの取り組みに参加して、このページの翻訳改善にご協力ください。 (Crowdin translation page, Contributing guide)

Thirdwebを使ったスマートコントラクトのデプロイ

はじめに

このセクションでは、ThirdWebを使用して、マーケットプレイス契約と対応するNFTコレクション契約をカイアネットワークにデプロイする方法を説明します。 このセクションでは、ThirdWebを使用して、マーケットプレイス契約と対応するNFTコレクション契約をカイアネットワークにデプロイする方法を説明します。 Thirdwebは、あなたのアプリやゲームを分散型ネットワークに接続するために必要なすべてを提供する完全なWeb3開発フレームワークです。

マーケットプレイス契約により、ユーザーはNFTを直接販売やオークションに出品することができ、OpenSeaで行われているのと同様にNFTの売買を強化することができます。

このガイドの終わりには、あなたは次のことができるようになる:

  • サードウェブを使用して契約を作成し、カスタマイズします。
  • thirdwebを使用してスマートコントラクトをコンパイル、デプロイ、実行します。

はじめに

この記事では、サードウェブを使ってコントラクトを作成、カスタマイズ、デプロイするためのさまざまな手段を探ります。

  • サードウェブダッシュボードの使用
  • thirdweb CLIを使う

このガイドでは、thirdwebダッシュボードを使用してMarketPlaceコントラクトをデプロイする方法と、thirdweb CLIを使用してマーケットプレイスに掲載される対応するnftコレクションをデプロイする方法を示します。

注:スマート・コントラクトの作成、デプロイ、実行のためのサードウェブ・ダッシュボードとCLIを探求することに重点を置くため、マーケットプレイス・コントラクトの仕組みについては説明しない。

サードウェブダッシュボードを使用したマーケットプレイス契約の作成とデプロイ

このセクションでは、thirdwebダッシュボードを使用してマーケットプレイス契約を作成し、デプロイします。 そのためには、以下の手順に従ってください: そのためには、以下の手順に従ってください:

  1. thirdweb dashboardにアクセスし、契約リストからMarketPlace契約を選択します。

  1. 契約概要ダッシュボードのDeploy Nowをクリックします。

  1. マーケットプレイスの説明画像というパラメータを含むように、マーケットプレイスの契約を設定します。

  1. 上の画像のようにDeploy Nowをクリックし、トランザクションが完了するのを待ちます。

トランザクションが正常に実行されると、Kaiascopeの検索バーに契約アドレスを貼り付けることで、デプロイメントを確認することができます。

thirdweb CLIを使用したNFTコレクション契約の作成とデプロイ

このセクションでは、thirdweb CLIを使用して、マーケットプレイスに掲載するNFTコレクションを作成し、デプロイします。 そのためには、以下の手順に従ってください:

契約書の作成

  1. ターミナルでこのコマンドを実行し、契約書を作成する:

npx thirdweb create --contract

  1. コマンドラインのプロンプトにお好みの値を入力してください:

i. プロジェクトに名前をつける。

ii. お好きなフレームワークをお選びください:HardhatまたはFoundry

iii. スマート・コントラクトに名前を付ける。

iv. ベース契約のタイプを選択する:EmptyERC20ERC721ERC1155。 必要な拡張機能を追加する。 このチュートリアルでは、ERC721を選択し、拡張子をnoneに設定します。

  1. 作成したら、プロジェクトのルート・ディレクトリに移動し、お好みのコード・エディタでプロジェクトを開いてください。

  2. 契約書フォルダを開くと、契約書はこのようになっているはずだ:


// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@thirdweb-dev/contracts/base/ERC721Base.sol";
contract nftcollection is ERC721Base {
constructor(
address _defaultAdmin,
string memory _name,
string memory _symbol,
address _royaltyRecipient,
uint128 _royaltyBps
)
ERC721Base(
_defaultAdmin,
_name,
_symbol,
_royaltyRecipient,
_royaltyBps
)
{}
}

この記事では、サードウェブを使ってコントラクトを作成、カスタマイズ、デプロイするためのさまざまな手段を探ります。 上記のコントラクトは、基本的なERC721Baseの機能を示している。 これは ERC721Base 契約をインポートして継承し、コンストラクタとその従属パラメータを含む必要なメソッドも実装している。

コントラクトを希望のカスタム・ロジックに変更することができ、それが完了すれば、コントラクトをデプロイする準備が整う。

契約の展開

  1. プロジェクトのルート・フォルダーに移動し、ターミナルでコマンドを実行する:

npx thirdweb deploy

このコマンドを実行すると、以下のアクションがトリガーされる:

  • フレームワークを検出する(hardhat, foundry)
  • は、カレント・ディレクトリにあるすべてのコントラクトをコンパイルする。
  • をクリックすると、配備する契約を選択できます。
  • コンパイルしたスマートコントラクトのコードを(アプリケーション・バイナリ・インターフェース(ABI)の形で)IPFSにアップロードします。
  1. 配備が完了すると、ダッシュボードのインターフェイスが開き、残りのパラメータを入力する。
  • _name:契約名
  • _symbol:シンボルまたは "ティッカー"
  • __royaltyRecipient:二次販売からのロイヤルティを受け取るウォレットアドレス
  • ロイヤリティBps:二次販売ごとにロイヤリティ受取人に付与されるベーシス・ポイント(bps)。
  1. 契約を展開するネットワークとしてKaia Mainnetを選択する。

  1. スマート・コントラクトがデプロイされると、ダッシュボードから追加設定や機能を管理できる。 例えば、NFTのアップロード、権限やアクセス制御の設定、新機能の追加などが可能です。

thirdwebのデプロイコマンドについては、こちらのデプロイガイドを参照してください。

配備された契約とのやり取り

このセクションでは、mint関数とtransferfrom関数をそれぞれ使用して、NFTの造幣と別の口座への移管を行います。 次のステップで説明しよう: 次のステップで説明しよう:

NFTの鋳造

  1. 新しく配置された契約 (puppyKlan-NC) のダッシュボードに移動して下さい。
  2. 契約ダッシュボードのNFTsタブにあるmint機能をクリックします。

  1. NFTの造幣に必要なパラメータを入力する:namemediadescriptionproperties

  1. 入力内容を確認し、Mint NFTボタンをクリックします。
  2. 取引を確認し、完了するまで待つ。 完了すると、以下のようにダッシュボードにNFTが追加されます: 完了すると、以下のようにダッシュボードにNFTが追加されます:

新オーナーへのNFT譲渡

  1. 契約(puppyKlan-NC)ダッシュボードのエクスプローラタブに向かう。
  2. 以下のように、WriteタブでtransferFrom関数を選択する。
  3. 必要な関数の引数を記入する:from(アドレス)、to(アドレス)、id(uint256)。

  1. 取引を確認し、完了するまで待つ。

結論

おめでとう! は、カレント・ディレクトリにあるすべてのコントラクトをコンパイルする。 ご不明な点がございましたら、カイアフォーラム、またはサードウェブ公式サポートまでお問い合わせください。 しかし、以下は、Kaia上でThirdwebをさらに構築する際に必要となる可能性がある便利なリソースの一覧です。

ページを改善してください。