这篇文章详细介绍了如何在Solana上使用Candy Machine创建和铸造NFT,从设置环境到具体操作都有清晰的步骤和代码示例。通过本指南,读者能够了解创建NFT的流程和技术要求,同时也提供了关于NFT管理和铸造的必要指令,适合希望深入了解Solana和NFT技术的开发者。
你好,亲爱的读者!我们收到了大量关于在 Solana 上进行 NFT 的指南请求。在之前的指南中,我们没有涉及最有趣的部分,也就是将图像和 NFT 代币的元数据链接在一起的部分。
为了实现这个目标,我们将使用一个叫做 Candy Machine 的程序。它是一种工具,可以让你在互联网上的小空间内安装自己的 Solana NFT 商店。
在本指南中,我们将指导你完成安装的整个过程。
注意
本指南旨在展示如何操作以及创建自己的 NFT 在 Solana 上所需的内容,并不旨在教你所有相关的底层技术。Solana 生态系统有太多内容需要学习,如果你想做的不止是本指南所提供的内容,那么你需要进一步研究和学习更多东西!加油! :)
在继续之前,必须安装以下先决条件,我们为每个项目提供了安装指南的链接,它们肯定比我们所能提供的更好地解释了如何安装每个技术。
Candy Machine 是一个使用 Metaplex CLI 生成 NFT 的程序,链接 NFT 的图像和相关元数据,并执行所谓的“公平拍卖”,主要包含两件事:第一是拍卖同时开始,没有预售!第二是如果没有更多 NFT 可以创建,则不会发送交易。
再也不必担心将你的 SOL 扔进黑暗中,不确定是否还有更多的 NFT 可以创建了。虽然在这个过程中有很多东西需要学习和探索,但是学习的最佳方式就是构建。
你可以使用两个不同的仓库,一个是 Candy Machine 团队创建的,另一个是社区成员在上面创建的,以使事情变得简单一些并创建更流畅的工作流程。在本教程中,我们将使用后者,如果你想单独探索并偏离本教程的路径,你需要了解 Metaplex 的工作原理。
要 fork 这个仓库,你需要去社区创建的那个仓库,然后点击右上角的 fork 按钮。
一旦 fork 完成,你需要克隆仓库:
git clone https://github.com/<用户名>/solana-candy-factory
一旦代码下载到你的计算机上,你需要在代码编辑器中打开 solana-candy-machine 文件夹。
现在我们开始配置我们的项目,以便开始开发。第一步是安装依赖,执行以下命令:
yarn
安装完所需的依赖后,需要在 Docker 中运行 Postgres 数据库,该数据库将存储 NFT 信息,在其被发行到区块链之前。
yarn start-nft-manager-db
这将配置数据库,并授予其连接到 Strapi 的权限,Strapi 是一个无头内容管理系统,将包含所有 NFT 的信息。
这是整个仓库的最大美妙之处。可以使用无头内容管理器来管理所有 NFT 的信息,直到它们被发布到区块链。要配置此内容,使用以下命令:
yarn nft-manager
之后,你可以导航到地址 http://localhost:1337/admin。第一次使用需要创建一个帐户并登录。之后,你需要创建一个“用户”,要做到这一点,请单击以下图像中显示的选项。
填写以下信息:
唯一剩下的就是保存用户。完成此步骤后,我们可以开始创建我们的收藏。
一个集合与多个 NFT 存在一对多的关系。一个集合会有多个 NFT。
这个过程将与创建用户非常相似。导航到 Collections 部分以创建新的集合。
这里有两个字段,Name 和 Family,这与 collections 相关,因为我们在 Strapi 中填充的字段必须与在 SOLANA 的 NFT 元数据标准 中定义的 JSON 属性相匹配。
Name 必须是你正在发布的项目的具体名称,而 Family 可以是更广泛的集合。
我将在此指南中根据名称命名这些字段,以便透明化。
Name 将是 Collection_Name,Family 将是 Collection_Family。现在你可以保存集合,并进入 NFTs 部分以创建你个别的 NFTs。
我将向你展示我的样子,并顺便解释每个字段:
格式化接下来的信息 --> 字段名: 值 -- 解释
?ext={file_extension}
来提供文件类型的信息。 "attributes": [\
{\
"value": "Solana",\
"trait_type": "Chain"\
},\
{\
"value": "QuickNode",\
"trait_type": "Company"\
},\
{\
"value": "Tutorial",\
"trait_type": "Category"\
},\
{\
"value": "Degen",\
"trait_type": "Status"\
}\
]
这些将是你 NFT 的属性。你不必拥有这些,它们是完全任意的。然而,如果设定某个属性,必须有一个值和一个 trait_type 字段。值可以是文本或数字。
"files": [\
{\
"uri": "image.png",\
"type": "image/png"\
}\
],
"category": "image",
"creators": [\
{\
"share": 100,\
"address": "7K6XCSwVh3YZAh7GhARZ9pQ7gWkFNuWQ77U5CbV3PcF3"\
}\
]
属性包含有关所显示内容的大量信息。它链接文件类型(你可以在这里查看支持的类型),设置 uri(上传到 Arweave)并链接 NFT 的创作者或创作者们,可以有多个创作者,因此 share 可以高达 100。
注意: 图像必须为 PNG 格式
一旦你用所选择的数据填写了所有这些信息,你就准备好铸造 NFT 了。
在我们到目前为止所做的一切中,我们只需几个命令就可以开始。这归功于我们使用的框架,它使一切变得简单,只需要几个命令。
我们首先需要确保所有由 NFT 生成的资金都会归入你的账户。使用以下命令:
yarn update-creator-all-rows
它会询问你正确的地址,填入你的 Solana 地址,这是我们之前看到的创作者地址。
然后你可以设置你想要的 NFT 未来销售的版税百分比,也就是 Seller_fee_basis_points 字段。
确认这一点后,我们就可以生成 NFT 的信息。
yarn update-creator-all-rows
它会询问你是否要随机打乱(shuffle),这将随机交换人们铸造 NFT 的顺序。如果你正在创建一批数量很大的 NFT(5 到 10 千个之间),你可能不希望它们按顺序生成,这会为你打乱顺序。在本教程中,我们只创建一个 NFT,因此没有意义这样做。
运行上述命令后,你将在 nft-manager/nfts-sources 文件夹中看到两个文件:0.json 和 0.png。
如果这些文件存在,你就准备好将它们发布到区块链上了。
由于我们使用的是开发网,事情将与希望将你的 NFT 发布到主网时稍有不同,但仓库的自述文件很好地涵盖了这些区别。你可以运行以下命令并按 Enter 接受所有默认值,而无需任何其他添加。
yarn setup-dev
如果你想了解这个命令背后发生了什么,可以在自述文件中找到!你只需知道这是负责前面生成的 NFT 铸造的部分。
这就是发布到区块链的所有过程!
通过创建和发布到区块链上的所有程序,只剩下与之互动了。要运行网页,你需要运行以下命令:
yarn dev
这将为你提供一个网页 http://localhost:3000。你可以连接你的钱包,并点击下面显示的“铸造”(Mint)按钮:
如你所见,该图像中不再有其他可用的 NFT,因为我们刚铸造了唯一存在的那个。如果你现在尝试再次铸造而没有更多可用,系统将询问你是否确认交易,然后程序会拒绝这笔交易,因为没有更多 NFT 可以供你获得。这是我们之前提到的公平拍卖(fair auction)的一部分。
如果一切顺利,现在你应该在你的 Phantom Wallet 中有一个 NFT。这是我的样子:
恭喜你!你刚刚在 Solana 上铸造了你的第一个 NFT!背后有很多内容我们没有涵盖。如果你试图在主网上进行更大规模的 NFT 发布,建议深入研究 Metaplex,了解不同现有命令的工作方式,这样事情不总是那么简单,你必须能够解决出现的问题。尽管如此,你仍然学到了许多东西!
订阅我们的通讯,以获取更多关于以太坊的文章和指南。如果你有任何意见,请随时在我们的 Twitter 上留言。你随时可以在我们的 Discord 服务器与我们交谈,那里有一些最酷的开发者 :)
- 原文链接: quicknode.com/guides/sol...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!