手把手教你获取Alchemy Road to Web3第一周NFT

22-08-16 16:31
阅读本文需 25 分钟
总结 AI 总结
看总结 收起

原文标题:《估值 102 亿融资 5.45 亿的 Alchemy 项目 Road to Web3 第一周 NFT 获取教程》
原文作者:Greta


Alchemy 是什么项目?


2019 年 12 月,Alchemy 完成 1500 万美元 A 轮融资,资方为 Pantera Capital,斯坦福大学,Coinbase,三星等。


2021 年 4 月,Alchemy 以 5.05 亿美元估值完成 8000 万美元 B 轮融资,Coatue 和 Addition 领投,DFJ Growth、K5 Global、Chainsmokers(烟鬼组合)、演员 Jared Leto 和 Glazer 家族参投。


2021 年 10 月,Alchemy 以 35 亿美元估值完成 2.5 亿美元 C 轮融资,由 a16z 领投的。


2022 年 2 月,Alchemy 以 102 亿美元估值完成 2 亿美元融资,Lightspeed 与 Silver Lake 领投。


Alchemy 是一个背景强大、经费充足、踏实做事、没有发币的团队,这样的项目不刷,难道去刷土狗吗?


并且,Alchemy 计划将新资金用于推广 Web3 采用,这方面的一些举措包括推出 Web3 University,就是现在的 Road to Web3 活动,活动为期 10 周,每周一个 NFT。看了下 nft 数量极少,估计由于任务难度大,很多小伙伴直接放弃,这样的项目若是空投,绝对是大毛。


手把手第一周教程开始:如何使用 Alchemy 开发 NFT 智能合约(ERC721)



官方原版教程链接,其中有长达 50 分钟的视频教程还有大篇幅的文字教程。我按照我的做法给大家一个易于操作的图文教程。


step1 使用 OpenZeppelin 合约向导开发 ERC721 智能合约。


1. 开发 ERC721 NFT 智能合约需要做的第一件事是 进入 Open Zeppelin 智能合约向导页面。


进入页面后,您将看到以下编辑器:



2. 单击左上角的 ERC721 按钮,选择要使用的 ERC 标准类型,输入 Name 和 Symbol:



3. 如图所示勾选 NFT (ERC721) 代币功能:



勾选完毕后右侧代码如下:


// SPDX-License-Identifier: MIT

pragma solidity ^0.8.4;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

import "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol";

import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";

import "@openzeppelin/contracts/access/Ownable.sol";

import "@openzeppelin/contracts/utils/Counters.sol";

contract Alchemy is ERC721, ERC721Enumerable, ERC721URIStorage, Ownable {

    using Counters for Counters.Counter;

    Counters.Counter private _tokenIdCounter;

    constructor() ERC721("Alchemy", "ALCH") {}

    function safeMint(address to, string memory uri) public onlyOwner {

        uint256 tokenId = _tokenIdCounter.current();

        _tokenIdCounter.increment();

        _safeMint(to, tokenId);

        _setTokenURI(tokenId, uri);

    }

    // The following functions are overrides required by Solidity.

    function _beforeTokenTransfer(address from, address to, uint256 tokenId)

        internal

        override(ERC721, ERC721Enumerable)

    {

        super._beforeTokenTransfer(from, to, tokenId);

    }

    function _burn(uint256 tokenId) internal override(ERC721, ERC721URIStorage) {

        super._burn(tokenId);

    }

    function tokenURI(uint256 tokenId)

        public

        view

        override(ERC721, ERC721URIStorage)

        returns (string memory)

    {

        return super.tokenURI(tokenId);

    }

    function supportsInterface(bytes4 interfaceId)

        public

        view

        override(ERC721, ERC721Enumerable)

        returns (bool)

    {

        return super.supportsInterface(interfaceId);

    }

}


step2 使用 REMIX IDE 修改和部署 ERC721 合约


1. 首先,您可能已经注意到,在 OpenZeppelin Wizard 编辑器的顶部,有一个「Open in Remix」按钮,单击它将在浏览器的新选项卡中打开 REMIX IDE。



2. 删除 17 行的 onlyOwner,否则只允许智能合约的所有者(部署智能合约的钱包地址)铸造 NFT。



3. 在第 14 行填入 uint256 MAX_SUPPLY = 100000;



4. 在第 19 行添加 require(_tokenIdCounter.current() <= MAX_SUPPLY, "I'm sorry we reached the cap");



step3 创建一个免费的炼金术帐户


1. 首先,到 alchemy.com 点击「登录」并创建一个新帐户:



2. 进入 Dashboard,点击 create app。



3. 如图,名字和描述可以随意输入,最下面选择以太链的 Rinkeby,点击 Create app。




4. 创建完成后,回到仪表板,单击「VIEW KEY」按钮,然后复制 HTTPS URL:



step4 将 Alchemy Rinkeby 添加到 Metamask 钱包


1. 点击添加网络。



2. 在其中填写 Rinkeby 网络和 RPC URL 信息并保存。



3. 获取 Rinkeby Test ETH , 只需导航到 rinkebyfaucet.com ,将钱包地址复制到文本栏中,然后点击「Send Me ETH」。10-20 秒后,会看到 Rinkeby ETH 出现在 Metamask 钱包中。



step 5 在 Rinkeby 测试网上编译和部署 NFT 智能合约


1. 回到 Remix,点击页面左侧的编译器菜单,版本选 0.8.4,勾选 Auto compile,然后点击「编译」按钮:



2. 然后点击「Deploy and Run Transactions」菜单,点击 Environment 下拉菜单并选择「Injected provider (Metamask)」,点击 contract 选择 Alchemy 那个,单击 deploy。



3. 将出现 Metamask 弹出窗口,单击「确认」,然后继续支付 Gas 费用。



4. 如果一切都按预期工作,10 秒后,您应该会在 Deployed Contracts 下看到该合约:



step6 在 IPFS 上创建和上传元数据


1. 首先,到 filebase.com 创建一个新帐户。


登录后,单击左侧菜单上的存储桶按钮,然后创建一个新存储桶 (自己取名字,重名不行):



2. 导航到存储桶,单击 上传按钮,然后上传您要用于 NFT 的图像,建议使用以下内容



3. 上传后单击它并复制 IPFS 网关 URL:



4. 建 txt 文档,粘贴以下 JSON 代码,并将文件保存为「metadata.json」。注意将第三行 image 那里改成刚才的链接。


  "description": "This NFT proves I've created and deployed my first ERC20 smart contract on Rinkeby with Alchemy Road to Web3",

  "external_url": "Alchemy.com",

  "image": "https://ipfs.filebase.io/ipfs/bafybeihyvhgbcov2nmvbnveunoodokme5eb42uekrqowxdennt2qyeculm",

  "name": "A cool NFT", 

  "attributes": [

    {

      "trait_type": "Base", 

      "value": "Starfish"

    }, 

    {

      "trait_type": "Eyes", 

      "value": "Big"

    }, 

    {

      "trait_type": "Mouth", 

      "value": "Surprised"

    }, 

    {

      "trait_type": "Level", 

      "value": 5

    }, 

    {

      "trait_type": "Stamina", 

      "value": 1.4

    }, 

    {

      "trait_type": "Personality", 

      "value": "Sad"

    }, 

    {

      "display_type": "boost_number", 

      "trait_type": "Aqua Power", 

      "value": 40

    }, 

    {

      "display_type": "boost_percentage", 

      "trait_type": "Stamina Increase", 

      "value": 10

    }, 

    {

      "display_type": "number", 

      "trait_type": "Generation", 

      "value": 2

    }

  }


5. 回到 Filebase 并上传 metadata.json 文件在我们上传图像的同一存储桶中。



6. 最后,单击 CID 并复制它,在下一部分中需要它来构建 NFT 的令牌 URI:



step7 Mint Your Rinkeby NFT


1. 返回 Remix 并在 Deploy & Run Transactions 菜单中,进入「已部署的合约」- 然后单击我们刚刚部署的合约。单击 safeMint 下拉框并将您的地址以下字符串粘贴到 uri(cid 处复制刚才的)字段中。


ipfs://\<your\_metadata\_cid>



如上图,单击交易将创建一个 Metamask 弹出窗口,提示您支付 gas 费用。


点击「确认」并继续铸造你的第一个 NFT!


2. 等待几秒钟,为确保铸币成功通过,将您的地址复制并粘贴到 balanceOf 方法输入中点击 call,它应该显示您有 1 个 NFT。



3. 在 tokenUri 插入「0」作为 id 参数,点击 call,它应该显示你的 tokenURI。



step8 在 OpenSea 上可视化您的 NFT


1. 到 testnets.opensea.io 并 使用您的 Metamask 钱包登录。然后单击您的个人资料图片,您应该会在那里看到您新铸造的 NFT。



2. 如果图像尚不可见,请单击它,然后单击「刷新元数据」按钮。



3. 有时 OpenSea 很难识别测试网元数据 - 并且可能需要长达 6 小时才能看到它。一段 时间后,您的 NFT 应该如下所示



恭喜,您已成功创建、修改和部署您的第一个智能合约。铸造了你的第一个 NFT,并在 IPFS 上发布了你的图像!


step9 提交任务


点击链接进入提交相关信息即可。


step10 领取 NFT


点击链接领取 NFT。


原文链接


欢迎加入律动 BlockBeats 官方社群:

Telegram 订阅群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方账号:https://twitter.com/BlockBeatsAsia

举报 纠错/举报
选择文库
新增文库
取消
完成
新增文库
仅自己可见
公开
保存
纠错/举报
提交