这两周非常忙,因为在做一个项目,要将某个开源项目部署到ZKSync上,于是开启了两周的艰难踩坑之路~
该项目合约非常多非常复杂,光sol文件就有100多个,加上测试和脚本,可能得有三四百个代码文件……而且ZKSync又不同于其他EVM,他比较特殊,我们没法直接部署,可见工作量巨大
也因此直接导致我上周挑战失败,痛失30刀!
所以,这周不能再扣钱了,于是写下本文,就当作是这两周的一部分工作总结~
原项目是使用Hardhat环境搭建的,我们这个项目在Hardhat基础上再加Foundry和ZKSync,技术栈如下:
HardHat官网:https://hardhat.org/
ethers.js中文文档:https://learnblockchain.cn/ethers_v5/
mocha官网:https://mochajs.cn/
Foundry中文文档:https://learnblockchain.cn/docs/foundry/i18n/zh/index.html
ZKSync官网:https://zksync.io/
ZKSync官方开发文档:https://era.zksync.io/docs/tools/
Hardhat是一个很好用的Ethereum开发环境,能让开发者更好地开发、测试和部署Solidity合约。他最大的特点是可拓展性,我们可以通过给Hardhat项目添加第三方插件来拓展其功能。ZKSync官方也提供了插件方便我们直接基于Hardhat来跑ZKSync合约。
官方教程:https://hardhat.org/hardhat-runner/docs/getting-started