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 智能合约。
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 的新选项卡。
删除 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文件在我们上传图像的同一个存储桶中。
最后,创建 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 上发布了你的图像!

