nft-mix项目实战:从零部署到OpenSea展示的完整流程
【免费下载链接】nft-mix项目地址: https://gitcode.com/gh_mirrors/nf/nft-mix
nft-mix是一个基于Python环境的NFT智能合约开发项目,以Chainlink-mix为起点,帮助开发者快速构建和部署NFT智能合约。本教程将带你完成从环境搭建到在OpenSea上展示NFT的全过程,无需复杂的区块链知识,适合新手和普通用户上手实践。
准备工作:环境安装与配置
安装必要工具
在开始之前,请确保你的系统中已安装以下工具:
- nodejs和npm
- python
安装Brownie
Brownie是一个以太坊开发框架,我们将用它来编译、测试和部署智能合约。安装命令如下:
pip install eth-brownie如果上述命令失败,可以尝试通过pipx安装:
pip install --user pipx pipx ensurepath # 重启终端后执行 pipx install eth-brownie安装ganache-cli
Ganache是一个本地以太坊测试网络,用于开发和测试智能合约:
npm install -g ganache-cli获取项目代码
克隆nft-mix项目仓库:
git clone https://gitcode.com/gh_mirrors/nf/nft-mix cd nft-mix配置环境变量
为了能够部署到测试网,需要设置以下环境变量:
- 从Infura获取
WEB3_INFURA_PROJECT_ID - 从MetaMask等以太坊钱包中导出
PRIVATE_KEY - 创建
.env文件并添加以下内容:
export WEB3_INFURA_PROJECT_ID=<你的PROJECT_ID> export PRIVATE_KEY=<你的PRIVATE_KEY>- 确保
brownie-config.yaml文件中包含:
dotenv: .envNFT类型介绍:简单与高级版对比
nft-mix项目提供了两种NFT合约:
SimpleCollectibles.sol
简单版NFT合约,适合初学者了解基本的NFT创建流程。
AdvancedCollectibles.sol
高级版NFT合约,使用Chainlink VRF(可验证随机函数)来生成随机狗品种(哈巴狗、柴犬和圣伯纳犬)。
以下是项目中包含的三种NFT狗图片:
图:nft-mix项目中的柴犬NFT图片
图:nft-mix项目中的哈巴狗NFT图片
图:nft-mix项目中的圣伯纳犬NFT图片
部署简单版NFT合约
部署合约
运行以下命令在Sepolia测试网上部署简单版NFT合约:
brownie run scripts/simple_collectible/deploy_simple.py --network sepolia创建NFT
部署完成后,创建你的第一个NFT:
brownie run scripts/simple_collectible/create_collectible.py --network sepolia部署高级版NFT合约
高级版NFT需要使用测试网ETH和LINK代币,你可以通过Sepolia水龙头获取。
部署合约
brownie run scripts/advanced_collectible/deploy_advanced.py --network sepolia创建NFT
brownie run scripts/advanced_collectible/create_collectible.py --network sepolia创建元数据
元数据包含NFT的属性、描述等信息。你可以选择手动上传到IPFS或使用项目中已有的元数据:
使用项目中的元数据
brownie run scripts/advanced_collectible/create_metadata.py --network sepolia手动上传到IPFS(可选)
- 下载并安装IPFS
- 设置环境变量:
export IPFS_URL=http://127.0.0.1:5001和export UPLOAD_IPFS=true - 启动IPFS守护进程:
ipfs daemon - 运行上传脚本:
brownie run scripts/advanced_collectible/create_metadata.py --network sepolia
设置Token URI
将元数据链接到NFT:
brownie run scripts/advanced_collectible/set_tokenuri.py --network sepolia在OpenSea上查看NFT
完成上述步骤后,你需要等待约20分钟让OpenSea索引你的NFT。之后,你可以在OpenSea测试网上查看你的NFT。
通过Pinata上传元数据(可选)
如果你想使用Pinata自动上传元数据,可以:
- 在Pinata注册并获取API密钥
- 设置环境变量:
PINATA_API_KEY和PINATA_API_SECRET - 运行上传脚本:
python scripts/upload_to_pinata.py
验证智能合约(可选)
设置ETHERSCAN_TOKEN环境变量后,可以验证合约:
brownie run scripts/advanced_collectible/deploy_advanced.py --network sepolia测试与代码优化
运行测试
brownie test代码优化
安装代码检查工具:
pip install black pip install autoflake优化代码:
autoflake --in-place --remove-unused-variables -r . black .总结
通过nft-mix项目,你已经成功部署了自己的NFT智能合约并在OpenSea上展示。这个项目提供了从简单到高级的NFT开发体验,帮助你逐步掌握区块链开发技能。无论你是NFT爱好者还是区块链开发者,nft-mix都是一个很好的学习起点。
项目中的智能合约代码位于contracts/目录,部署脚本位于scripts/目录,你可以根据自己的需求进行修改和扩展。
祝你的NFT之旅顺利! 🚀
【免费下载链接】nft-mix项目地址: https://gitcode.com/gh_mirrors/nf/nft-mix
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考