当サイトでは実際に購入した商品のみをレビューし、アフェリエイトリンク付きでご紹介しています
独自コントラクトNFTの作り方
![独自コントラクトNFTの作り方](https://classynode.com/wp-content/uploads/2023/01/myfirst_originalcontract_eyecatch.jpg)
フルオンチェーンNFTの作成を目指し、勉強の記録をまとめます。
この記事では、独自コントラクトNFTのミントに挑戦です。
この記事でわかること
テストネットワークで独自コントラクトNFTをミントする
目次
はじめに
前回、開発用ウォレットを作成しました。
あわせて読みたい
![](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
![](https://classynode.com/wp-content/uploads/2023/01/wallet_for_dev_eyecatch-300x158.jpg)
【フルオンチェーンNFT】開発用ウォレットとテスト用ETHの入手
この記事では、フルオンチェーンNFTの作成を目指し、勉強の記録をまとめます。 この記事でわかること ウォレットにテストネットワークを表示する ウォレットへ開発用 …
今回の目標はこちら!
- 画像をHTTPサーバーに置く
- 独自コントラクトで、テストネットワークへミント
- OpenSea(テストネットワーク)に表示する
フルオンチェーンNFTの前に、独自コントラクトNFTに挑戦してみます。
参考にさせていただいたサイトはこちらです。
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
一部手順を変更しています
画像データをGithubへアップロード
まず、独自コントラクトから参照する画像とJSONファイルを用意します。
Githubの環境準備は、こちらの記事がわかりやすいです
Qiita
![](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgwJTkwJUU1JTg4JTlEJUUzJTgyJTgxJUUzJTgxJUE2JUUzJTgxJUFFJTIwR2l0aHViJTIwJUUzJTgwJTkxJUUzJTgxJTlEJUUzJTgxJUFFJUVGJUJDJTkxJUUzJTgwJTgwJUUzJTgyJUEyJUUzJTgyJUFCJUUzJTgyJUE2JUUzJTgzJUIzJUUzJTgzJTg4JUU0JUJEJTlDJUU2JTg4JTkwJUVGJUJEJTlFJUUzJTgzJUFBJUUzJTgzJTlEJUUzJTgyJUI4JUUzJTgzJTg4JUUzJTgzJUFBJUU0JUJEJTlDJUU2JTg4JTkwJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1jMTZlNWYxNzViMTQ0ZDM5YzJiNzA5M2ZiNTBiNGZlMg&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBrdXJhX3l1JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz03YmY2Yzk0ZTBiZjQ3MWUzYmMzYjAzZTFkYzRlMTU1NQ&blend-x=142&blend-y=486&blend-mode=normal&s=9211e260114cf132be29ac77b88783ea)
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgwJTkwJUU1JTg4JTlEJUUzJTgyJTgxJUUzJTgxJUE2JUUzJTgxJUFFJTIwR2l0aHViJTIwJUUzJTgwJTkxJUUzJTgxJTlEJUUzJTgxJUFFJUVGJUJDJTkxJUUzJTgwJTgwJUUzJTgyJUEyJUUzJTgyJUFCJUUzJTgyJUE2JUUzJTgzJUIzJUUzJTgzJTg4JUU0JUJEJTlDJUU2JTg4JTkwJUVGJUJEJTlFJUUzJTgzJUFBJUUzJTgzJTlEJUUzJTgyJUI4JUUzJTgzJTg4JUUzJTgzJUFBJUU0JUJEJTlDJUU2JTg4JTkwJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1jMTZlNWYxNzViMTQ0ZDM5YzJiNzA5M2ZiNTBiNGZlMg&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBrdXJhX3l1JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz03YmY2Yzk0ZTBiZjQ3MWUzYmMzYjAzZTFkYzRlMTU1NQ&blend-x=142&blend-y=486&blend-mode=normal&s=9211e260114cf132be29ac77b88783ea)
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgwJTkwJUU1JTg4JTlEJUUzJTgyJTgxJUUzJTgxJUE2JUUzJTgxJUFFJTIwR2l0aHViJTIwJUUzJTgwJTkxJUUzJTgxJTlEJUUzJTgxJUFFJUVGJUJDJTkxJUUzJTgwJTgwJUUzJTgyJUEyJUUzJTgyJUFCJUUzJTgyJUE2JUUzJTgzJUIzJUUzJTgzJTg4JUU0JUJEJTlDJUU2JTg4JTkwJUVGJUJEJTlFJUUzJTgzJUFBJUUzJTgzJTlEJUUzJTgyJUI4JUUzJTgzJTg4JUUzJTgzJUFBJUU0JUJEJTlDJUU2JTg4JTkwJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1jMTZlNWYxNzViMTQ0ZDM5YzJiNzA5M2ZiNTBiNGZlMg&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBrdXJhX3l1JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz03YmY2Yzk0ZTBiZjQ3MWUzYmMzYjAzZTFkYzRlMTU1NQ&blend-x=142&blend-y=486&blend-mode=normal&s=9211e260114cf132be29ac77b88783ea)
【初めての Github 】その1 アカウント作成~リポジトリ作成 – Qiita
#・はじめに#先日GitHubでソースを公開しようと、人生で初めて GitHub に登録しました。今後Githubを活用しようと考えている人のために3回に分けて私の体験談(操作手順)…
実際の環境はこちらです。
GitHub
![](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
![](https://opengraph.githubassets.com/a7bc8c205c162e6feb54bf5be0464d3eadfca09f40d313d1ebdec07d2cdec1cb/classynode/test-contract)
GitHub – classynode/test-contract: テストコントラクトのメタデータ保管用
テストコントラクトのメタデータ保管用. Contribute to classynode/test-contract development by creating an account on GitHub.
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
メタデータは以下のようなJSONファイルを用意します。
imageは、自分の画像PATHを記載します。
{
"tokenId": "0",
"name": "test 0",
"description": "test NFT MetaDeta",
"image": "https://raw.githubusercontent.com/classynode/test-contract/master/image/0.jpg"
}
独自コントラクトをミントする
ここからは、MetaMaskに接続できるChromeブラウザで作業しよう!🦊
OpenZeppelinのContracts Wizardでコントラクトを作る
あわせて読みたい
![](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
![](https://wizard.openzeppelin.com/tw-card.png)
![](https://wizard.openzeppelin.com/tw-card.png)
![](https://wizard.openzeppelin.com/tw-card.png)
OpenZeppelin Contracts Wizard
An interactive smart contract generator based on OpenZeppelin Contracts.
STEP
ERC721を選択
STEP
Name, Symbolは自由に入力する
STEP
BaseURIは、Githubに用意したメタデータのPATHを入力
STEP
MitableとAuto Increment Idsのチェックを入れる
![](https://classynode.com/wp-content/uploads/2023/01/contracts_wizard-1024x589.jpg)
![](https://classynode.com/wp-content/uploads/2023/01/contracts_wizard-1024x589.jpg)
Remixでコンパイル、デプロイする
STEP
Contracts Wizardの右上にある「Open in Remix」をクリック
新しいタブが開きます。
STEP
上から3つ目のメニューを開き、「Compile contract」をクリック
![](https://classynode.com/wp-content/uploads/2023/01/remix_compile-1024x459.jpg)
![](https://classynode.com/wp-content/uploads/2023/01/remix_compile-1024x459.jpg)
コンパイルに成功すると、上から3つ目のメニューに緑色のチェックマークがつきます。
STEP
上から4つ目のメニューを開き、「Injected Provider -MetaMask」を選択して、「Deploy」
![](https://classynode.com/wp-content/uploads/2023/01/remix_deploy-1024x622.jpg)
![](https://classynode.com/wp-content/uploads/2023/01/remix_deploy-1024x622.jpg)
STEP
Developed Contractの中にある、safeMintに自分の開発用ウォレットアドレスを入力し、「SafeMint」をクリック
![](https://classynode.com/wp-content/uploads/2023/01/remix_mint-1024x753.jpg)
![](https://classynode.com/wp-content/uploads/2023/01/remix_mint-1024x753.jpg)
STEP
ウォレット画面が開き、ガス代の確認画面で「確認」をクリック
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
これでミントできました!
OpenSeaのテストネットワークで動作確認
じゃーん!できました!✨
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
![](https://classynode.com/wp-content/uploads/2021/03/sirone.jpeg)
やったー!
まとめ
独自コントラクトのNFTをテストネットワークにミントすることができました。
次は、SVGデータの作成をまとめたいと思います。
最後まで読んでいただきありがとうございました。
みなさまの暮らしがより良くなりますように。