展示如何使用 Foundry 框架进行 Solidity 智能合约的开发;如何使用cast指令与智能合约交互;以及如何使用ethers库让前端与智能合约交互
作者:realrain
Warning
本教程中构建的所有代码未经过严格审核,仅用于学习交流目的,禁止在实际的生产环境中使用!!!
- Solidity 官方文档: 如果你有一定的编程基础,对一些
Solidity基础变量的定义或语法的使用还不太了解,又不想花太多的时间去看视频教程,那么结合文档进行学习会是一个更不错的选择 - Foundry 官方文档: 这是使用
Foundry框架进行Solidity智能合约开发必须要阅读的资料,同时当你真正开始构建生产级别应用时,可以在其中找到很多我并未在提及到的开发技巧和解决错误的方法 - OpenZeppelin官网: 内有 Solidity 中最全的标准库,官方文档中包含不同操作系统的安装方式,以及查看标准库中一些合约的源代码,同时主页有一个简易的合约定制工具,可以快速生成 ERC-20, ERC-721 等合约的模板
- 以太坊官网: 这是以太坊的官方网站,页面大都进行了中文翻译,对中文开发者非常友好,你可以在这里了解到以太坊生态相关的基础知识,路线图和资讯。如果你对以太坊白皮书感兴趣的话,在导航栏中你也能找到 Vitalik 在 2014 年撰写的白皮书
- git:Git 是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到大型的所有项目。
- 安装成功后运行
git --version查看版本,截止 2025 年 7 月,使用的版本为2.50.0.windows.2。
- Node.js:Node.js® 是一个免费、开源、跨平台的 JavaScript 运行时环境,可让开发人员创建服务器、Web 应用程序、命令行工具和脚本。
- 安装成功后运行
node -v查看版本,截止 2025 年 7 月,使用的版本为22.17.0。 - 运行
npm -v,查看npm包管理器的版本,截止 2025 年 7 月,使用的版本为10.9.2。 - 推荐使用
nvm管理node版本,运行nvm -v查看版本,截止 2025 年 7 月,使用的版本为1.2.2。
- 安装
Rustup: Foundry 运行必须的环境时- rust
- 安装成功后运行
rustc --version查看版本 ,截止 2025 年 7 月,使用的版本为rustc 1.88.0 (6b00bc388 2025-06-23)
- 安装成功后运行
- rust
- 安装并配置
Foundry- foundry
- 安装成功后运行
forge --version查看版本 ,如果安装成功则显示forge x.x.x,截止 2025 年 7 月,使用的版本为forge Version: 1.2.3-stable Commit SHA: a813a2cee7dd4926e7c56fd8a785b54f32e0d10f
- 安装成功后运行
- foundry
- 安装Next.js: Next.js 是一个用于构建全栈 Web 应用程序的 React 框架。您可以使用 React 组件构建用户界面,并使用 Next.js 实现附加功能和优化。截止 2025 年 7 月,使用的版本为
15.3.5。
- 在终端运行
npx create-next-app@latest初始化一个 Nextjs 项目,并根据自己的需求选择所需要的附加插件
- 安装tailwindcss,CSS框架,一般初始化Next项目时会提供选择。截止 2025 年 7 月,使用的版本为
^4。
- 在终端运行
npm install -D tailwindcss npx tailwindcss init,然后根据官网文档进行配置
- 安装Ethers: ethers.js 库旨在成为一个与以太坊区块链及其生态系统交互的完整而紧凑的库。截止 2025 年 7 月,使用的版本为
^6.15.0。
$ forge build$ forge test$ forge fmt$ forge snapshot$ anvil$ forge script script/Counter.s.sol:CounterScript --rpc-url <your_rpc_url> --private-key <your_private_key>$ cast <subcommand>$ forge --help
$ anvil --help
$ cast --help更多详细的交互操作见doc目录文档
作者: realrain
特别感谢:lllu_23
联系方式: 1936648485@qq.com
Blog:真雨の小破站
