コンテンツへスキップ
0%

MetaplexとGumdropを使ってSolana NFTをエアドロップする方法

Daniel Idowu headshot

執筆者 Daniel Idowu

2022年8月2日 公開読了時間 1 分

このチュートリアルでは、Metaplexが開発したNFTツールの1つであるGumdropを使用して、Solana上でNFTをエアドロップする方法を説明します。Solana上でのNFTプロジェクト開発が初めての方でも取り組める、初心者向けのチュートリアルです。

このガイドの所要時間:15分

このチュートリアルでは、以下を行います。

  1. NFTを作成する
  2. NFTをミントする
  3. Gumdropコマンドラインインターフェース(CLI)を使ってNFTをエアドロップする
  4. Vervel と Gumdrop を使って友人と共有するリンクを作成する

これらの用語が今わからなくても心配いりません。一緒に順を追って進めていきます。

NFTエアドロップとは?

NFTエアドロップとは、無料のNFTがウォレットアドレスに転送されることを指します。NFTエアドロップは、NFTプロジェクトがコレクターに報酬を与えたり、コミュニティのエンゲージメントを促進したり、今後のNFTミントに向けたallowlistトークンを配布したりする際によく使われる方法です。NFTエアドロップは、NFTマーケティング施策として最も頻繁に用いられています。

NFTエアドロップの例としては以下が挙げられます。

  1. Swim Protocol - クロスチェーンブリッジを利用したユーザーにSwimmer NFTをエアドロップ
  2. Aurory - Aurorian NFTを保有するコレクターに新しいアートやコレクティブルをエアドロップ
  3. Degenerate Ape Academy - トークン保有者にDegenerate Trash Pandaのミントに参加するためのミントトークンをエアドロップ

保有者に事実上無料のアイテムを配布することで、NFTプロジェクトはトークンとコミュニティの価値を継続的に生み出すことができます。

gumdropとは?

GumdropはMetaplexが提供するNFT機能で、オフチェーンのハンドルでツリーを構築し、ユーザーが任意のウォレットへ引き換えられるようにすることで、クリエイターがallowlistに登録されたユーザーへ直接、受け取り用のリンクを送ることができます。GumdropはCandy Machineと組み合わせて、NFTエアドロップの完了やトークンの配布にも使用できます。

Gumdropは、allowlistを使ってNon-fungibleトークンをドロップするプロセスを簡素化することで、Solana上でのNFTエアドロップを容易にします。

gumdropでSolana NFTをエアドロップする方法

このチュートリアルを進める準備として、以下のツールをマシンにインストールしておく必要があります。

  1. NodeJS (バージョン16)
  2. TS-Node
  3. SolanaCLI
  4. Yarn
  5. Git
  6. Metaplex CLI
  7. Phantom Wallet

Solana開発が初めての方は、先へ進む前にSolana開発者ツールのインストール方法を確認してください。

マシンに異なるバージョンのNodeがインストールされている場合は、NVMを利用できます。

今は圧倒されるように感じても心配いりません。各ツールの機能は、進めていく中で実際に示していきます。

ステップ1. gumdrop CLIを使って初期化する

Gumdrop CLIのインストールと設定は、Gumdrop GitHubのリポジトリで行われます。必要なものはすべて揃っています。まずはリポジトリをクローンして、自分のコンピューターに取得しましょう。進める前に、node、yarn、ts-nodeがインストールされていることも確認する必要があります。

ts-nodeは以下を実行してインストールできます。

以下を実行して確認できます。

では、ターミナルでmkdirコマンドを使って空のフォルダを作成しましょう。このフォルダにはsolana-airdropという名前を付けます。

Solanaウォレットを作成するには、フォルダ内で以下のコマンドを実行します。

ターミナルに表示されるメッセージは、後でpubkeyとシードフレーズが必要になるため、安全な場所に保存してください。

以下は、その表示例です。

solana-keygenのターミナル出力:新しいSolanaウォレットのpubkeyとシードフレーズが表示されている
Solanaウォレット生成の出力結果

次に、Gumdropプロジェクトをsolana-airdropフォルダ内にクローンします。

続いて、CLIが含まれるディレクトリに移動します。

次に、以下を実行します。

このコマンドで必要な依存関係がすべてインストールされます。インストールには数分かかる場合があります。

次に、学習目的でお金を使いたくないので、Solana Devnetクラスターに接続します。実際のアプリケーションではmainnetを使用する必要がある点に注意してください。以下のコマンドを実行してdevnetに切り替えます。

次に、NFTを保持するための新しいキーを作成する必要があります。「Se」というのは、pubkeyが「Se」から始まることを意味します。

pubkeyがSeから始まるSolanaキーペア生成のターミナル出力
Solanaキーペア生成の出力結果

新しいSolanaアドレスを設定するために、さらにいくつかコマンドを実行しましょう。

これにより、以下が表示されるはずです。

新しいウォレットアドレスでSolana CLIを設定した後のターミナル出力
Solanaウォレットアドレス設定の出力結果

ステップ2. Devnetウォレットに資金を入れる

次に、テスト用のSolanaトークンを取得する必要があります。devnetを使用しているので、ターミナルで以下のコマンドを実行すれば、すぐにsolを取得できます。

代わりに、SolanaフォーセットからdevnetのSOLトークンを取得することもできます。

Solanaフォーセットのウェブサイトインターフェース
Solanaフォーセットのウェブサイトインターフェース

コマンドラインで以下のスクリプトを実行すれば、devnetウォレットにSolanaがあることを確認できます。

ステップ3:PhantomウォレットをDevnetクラスターに接続する

次に、新しく作成したdevnetウォレットをPhantomにリンクします。これを行うには、settingsをクリックし、Change Networkを選択して、Devnetを選びます。

Phantomウォレットの設定:ネットワークをSolana Devnetクラスターに変更する
PhantomウォレットをSolanaのdevnetクラスターに接続する

ステップ4. DevnetウォレットをPhantomに追加する

ここで、devnetウォレットの秘密鍵を取得する必要があります。ターミナルを開き、catを使ってkeypair.jsonファイルの内容を確認して取得します。

devnetウォレットをPhantomに追加するには:

  1. Phantomを開く
  2. 受け取った出力をコピーする
  3. わかりやすい名前を付ける
  4. 左上のナビゲーションメニューからImport Private Keyを選択する
  5. Add/Connect Walletをクリックする
  6. Private Keyの欄にキーを貼り付ける

これで、devnetのPhantom Walletに5 SOLが反映されているはずです。

ステップ5. NFTを作成する

Solana NFTの作成とミントには、メタデータ標準に準拠したMetaplex、Holaplex、Solseaといったプラットフォームを使用できます。

まず、以下を行います。

  1. ウォレットを設定し、SOLトークンが入っていることを確認する
  2. Holaplexのウェブサイトにアクセスする
  3. PhantomウォレットをMetaplexプラットフォームに接続する

Metaplexが資金の確認と取引の承認を求めてきます。これは承認して問題ありません。

Holaplexの作成ページ:Solana NFTをミントするためのアートワークと詳細のアップロード
Holaplexを使ったNFTの作成

続いて、以下を行います。

  1. createタブをクリックする
  2. browse fileを選択する
  3. 好きな画像をアップロードする
  4. 画像にNamedescriptionを追加する
  5. 属性を設定する
  6. Nextをクリックする

好きなだけコピーを作成してミントできるように、NFTをunlimitedに設定します。

mintをクリックして処理が成功すると、ウォレット内でNFTを確認できるはずです。

次に、メタデータを取得して安全なファイルに保存し、先ほど生成したpubkeyアドレスにPhantomウォレットからNFTを転送します。

これは以下を実行することで確認できます。

代わりに、より上級のSolana開発者はCandy Machineを使ってミントすることもできます。

ステップ6. ドロップタイプを選択する

先に進む前に、gumdropプログラムが3つのドロップタイプをサポートしていることを理解しておく必要があります。

  1. The Token Airdrop
  2. NFT candy machine pre-sale
  3. The Edition prints

また、配布方法とホワイトリストも定義する必要があります。

CLIの使い方をガイドするオプション一覧は、ここに記載されています。

ドロップタイプについては、Token Airdropを使用します。

この方法により、CLIはトークンを生成された使い捨てのキーペアに移動できるようになり、追加のgumdropをより論理的に作成できるようになります。

配布方法については、SMS、Discord、Email、またはウォレットを使ってエアドロップできます。このチュートリアルでは、以下のコマンドを使ってウォレット経由でエアドロップしました。

完全なコマンドの実行に進む前に、whitelist.jsonファイルを作成する必要があります。このallowlistは、エアドロップの受信者を指定するのに役立ちます。

これは、mintやprintなど、請求すべき識別値とエディション数を持つ受信者のリストです。

whitelistは以下の形式になっています。

以下の情報に置き換えて、NFTエアドロップを受け取る友人の数に応じて入力してください。

その後、以下のコマンドで配布リストを参照できます。

最後に、以下のコマンドをすべて実行します。

ステップ7. Solana NFTをエアドロップする

それでは、選んだアドレスにNFTをエアドロップしましょう。ファイルディレクトリ内の「log」フォルダを見つけ、すべてのファイルを確認し、以下に示すようなURLを含む.jsonファイルを探してください。このファイルには、エアドロップの受信者向けのURLが記載されたwhitelist.jsonファイルの内容が含まれています。このリンクをブラウザで開くことができます。

以下のようなものが表示されるはずです。

Gumdrop NFTの請求インターフェース
Gumdrop NFTの請求インターフェース

Gumdropは、受信者がエアドロップを簡単に請求できるインタラクティブなUIを提供します。このカスタムgumdropサイトはVercelにデプロイできます。

これで完了です!友人にNFTをエアドロップできるgumdropサイトを構築できました。

ステップ8:gumdropを閉じる

gumdropが終了したら、gumdropを閉じることでマスターエディションを回収できます。gumdropを閉じると、受信者はgumdropを請求できなくなる可能性があります。

gumdropを閉じるコードスニペットは以下の通りです。

権限を引き出したり、トークンを返却したりするには、クレーム統合に関する追加情報を渡すことができます。

ステップ9:カスタムgumdropサイトをデプロイする

Gumdropウェブサイトをデプロイすることもできます。特にフロントエンドフレームワークや静的サイトを構築する際に堅牢な開発者体験を提供することで知られるVercelをお勧めします。

まず、Vercelにアクセスして無料アカウントに登録し、GitHubを使うことで、より素早く連携できます。

Vercelダッシュボード:Gumdropエアドロップサイトをデプロイするための新しいプロジェクトの作成
Vercelで新しいプロジェクトを作成する

次に、以下を行います。

  1. new projectを選択し、Githubリポジトリからファイルをインポートする
  2. プロジェクト名を入力し、ディレクトリを指定する
  3. Build and Output Settingsを切り替え、以下のように変更する
GitHubからファイルをインポートしてSolana NFTエアドロップ用のVercelウェブサイトを作成する
GitHubからファイルをインポートしてSolana NFTエアドロップ用のVercelウェブサイトを作成する

次に、Output Directoryがoverrideに設定されていることを確認し、Deployをクリックして、プロジェクト用の一意のリンクを取得しましょう!

おめでとうございます!これでカスタムGumdropウェブサイトのデプロイが完了しました🎉

友人と共有したい場合は、リンクを共有するだけで構いません。allowlistの配布方法がウォレットに設定されているため、彼らのウォレットアドレスも取得しておく必要があります。

Background gradient

ブロックチェーンで魔法を生み出す

Alchemyは、最も強力なweb3開発者向けプロダクトとツールを、豊富なリソース、コミュニティ、そして卓越したサポートと組み合わせて提供します。