- Primary Sales Contract: プライマリーセールのためのコントラクトのセットアップとデプロイ方法です。WebショップやNFTドロップなどに適しています。
- Embedded Wallet:Web SDK と Sequence Embedded Wallet を使ってユーザー認証を行います。
- Sequence Indexer: Sequence Indexerを活用してNFTメタデータやユーザーのウォレット資産を照会します。
- Sequence Metadata:Sequence BuilderのUIやAPIを使ったコレクションやトークンのメタデータ管理・更新。
ゲームアイテム用Primary Salesのボイラープレートをクローンする
Sequence CLIを使って、Primary Salesリポジトリを簡単にクローンできます。
このリポジトリの使い方
このリポジトリで何ができるのでしょう?隠されたメタデータ付きNFTを販売できるのです!さまざまな特性やレアリティを持つトークンをユーザーに提供できます。剣?盾?絵画?ランダムなバトルパス?もしかしたらゴールデンチケットも?どんな結果が待っているのか、想像するだけでドキドキしますね!ユーザーにミステリーと、トークン公開時のご褒美を与えましょう。未公開トークンの作成
このステップでは、スクリプトを使ってNFTコレクション用の未公開トークンを作成する方法を説明します。コレクションが正しく設定されていることを確認し、コレクション詳細画面のURLからIDをコピーしておいてください。 未公開トークンを作成するには、scripts/utils/getBodyAndKeys.ts
ファイル内で collectionId
と作成したいトークン数(number
)を設定してください。サンプルも記載されています。
.env
ファイルで JWT_SECRET_KEY
、VITE_PROJECT_ACCESS_KEY
、VITE_PROJECT_ID
を必ず設定してください。スクリプト:
プロジェクト接続フローとERC721セールスコントラクトの設定
ここからは、プロジェクトの接続フローをすべて完了し、未公開トークンを含むコレクションと紐づくERC721セールスコントラクトを設定する必要があります。重要な注意点:
- プライマリセールスコントラクトの在庫数は、エンドポイントで作成した未公開トークン数と同じでなければなりません。
- 例えば、未公開トークンを300個生成した場合、セールスコントラクトの在庫も300個に設定し、コントラクトと未公開トークンの整合性を保ってください。
- 未公開トークンのコレクションをコントラクトに紐づける。
- ERC721セールスコントラクトの総供給量(在庫)が未公開トークン数と一致していることを確認してください。これにより、コントラクトで販売される内容と未公開トークンの間に不整合が生じません。
リポジトリで独自のPrimary Salesコントラクトを設定する
いくつかのサンプルコントラクトや変数を用意していますが、多くの場合、独自のコントラクトを利用することになるでしょう。その場合は、以下の手順に従って設定してください。1
Sequence BuilderでPrimary Salesコントラクトをデプロイする。
まず、販売したいゲームアイテムを格納するPrimary Sales ContractとERC721コントラクトが必要です。その手順についてはこちらのガイドをご覧ください。
2
プロジェクトのセールス設定を行う。
セールスコントラクトをデプロイしたら、ボイラープレートのセールス設定を更新します。
src/salesConfigs.ts
を開き、salesConfigs変数にプロジェクトで利用する各コントラクトのセール情報を、対応するネットワークごとに配列で追加してください。例:現在Sequenceでサポートされている全チェーンはこちらで確認できます。
3
プロジェクトのデフォルトchainIdを設定する。
デフォルトのchainIdを設定するには、
src/salesConfigs.ts
の defaultChainId 変数を、プロジェクトで最初に表示したいchainIdに変更してください。これはsalesConfigs変数に含まれているchainIdと一致している必要があります。例:4
完了です!
これでプライマリドロップセールが正しく表示・動作するようになります。購入するには、セールの通貨として設定したトークンをウォレットに用意し、購入数量を指定し、「購入」ボタンをクリックしてください!
トークンの公開
期待が高まりますね。ユーザーは自分の運命を知るのを心待ちにしています。NFTの本当の属性を公開して、みんなを喜ばせましょう!このスクリプトは、すべての未公開トークンを公開し、ランダムに生成された実際の値をNFTに割り当てます。メタデータの生成方法は自由にカスタマイズできます! 未公開トークンを公開するには、scripts/utils/getBodyAndKeys.ts
ファイル内で collectionId
を設定してください。サンプルも記載されています。
.env
ファイルで JWT_SECRET_KEY
、VITE_PROJECT_ACCESS_KEY
、VITE_PROJECT_ID
を必ず設定してください。
このステップの前に、プライマリセールを無効化するために有効期限を設定するか、コントラクトの在庫がなくなるまで待つ必要があります(必須)。