Cover photo

估值102亿融资5.45亿的Alchemy 项目Road to Web3

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领投。

step1 使用 OpenZeppelin 项目开发工具包 ERC721 智能合约。

  1. ERC721 NFT智能合约需要做的第一个项目是进入智能开发项目Zeppelin。

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

2.左上角的ERC721按钮,选择要使用的ERC标准类型,输入名称和符号:

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 的新选项卡。

  1. 删除 17 的唯一所有者,否则只允许合约智能行部署合约的地址生成 NFT。

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

4.在第 19 行添加 require(_tokenIdCounter.current() <= MAX_SUPPLY, "Im 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 ETH,只需导航到rinkefaucet.com,然后通过Test将项链地址复制到文本,点击“Send Me ETH”。10-20秒后,会Rinkeby ETH出现在Metamask钱包中。

step 5 在 Rinkeby 测试网上编译和部署 NFT 智能合约 1.回到Remix,点击页面左侧的编译器菜单,选择0.8.4,勾选自动编译,然后点击“编译”按钮:

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网关网址:

4.建代码文档,粘贴下面的JSON,将文件保存为“metadata.json”。注意将第三行的图像文本改成刚才的链接。

{ "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.回到文件库并上传metadata.json文件在我们上传图像的同一个存储桶中。

  1. 最后,创建 CID 并复制它,在下一部分中需要它来制造 NFT 的令牌 URI:

step7 Mint Your Rinkeby NFT 1.返回Remix并在 Deploy & Run Transactions 中,进入“部署的合同”-然后单击菜单我们刚刚部署的位置的合同。复制刚才的)场地中。

ipfs:// 如上图,您的交易将创建一个 Metamask 弹出窗口,提示 gas 费用。 点击“确认”并继续铸造你的第一个 NFT! 2.等待方法通过几个调用,为确保将您的地址复制并粘贴到 balanceOf 输入中,它显示有 1 个 NFT。 3.在tokenUri中插入“0”作为id参数,点击call,它应该显示你的tokenURI。 step8 在 OpenSea 上可视化您的 NFT 到testnets.opensea.io并使用您的 Metamask 钱包登录。然后点击您应该的个人资料,您会看到您新创建的 NFT。 2.如果图像尚不可见,请点击它,然后点击“刷新元数据”按钮。 有时 OpenSea 很难识别小时测试元数据 - 可能需要 6 次才能看到它。 然后,您的 NFT 应该变成: 恭喜,您已经成功创建、修改和部署了您的第一个智能合约。构建了你的第一个 NFT,并在 IPFS 上发布了你的图像!