开发环境搭建
写第一行 Solidity 前先把环境搭对。本页列出要装什么、怎么给 OXN 配置。
必要工具
| 工具 | 用途 | 推荐版本 |
|---|---|---|
| Node.js | Hardhat 与 SDK 的 JavaScript 运行时 | 18 或更新 |
| npm(或 pnpm / yarn) | 包管理器 | 随 Node.js 安装 |
| Hardhat 或 Foundry | Solidity 构建 / 测试 / 部署工具链 | 最新稳定版 |
| Git | 版本控制 | 任意近期版本 |
| 代码编 辑器 | 推荐 VS Code | - |
开发 dApp 不需要 Rust、Go 或任何 OXN 专属工具链。
推荐 VS Code 扩展
Solidity 开发:
- Solidity(
JuanBlanco.solidity)——语法高亮、lint、编译器集成 - Prettier - Code formatter——一致的格式化
- ESLint——脚本的 JavaScript / TypeScript lint
环境变量
大部分 dApp 工程用 .env 文件放机密与端点。推荐内容:
.env
PRIVATE_KEY=0x... # 你充过币的测试账户
OXN_RPC_URL=https://rpc.bout.network
OXN_CHAIN_ID=186
永远不要 commit .env——加进 .gitignore。CI 里用加密 secret 而不是提交的文件。
目录布局
标准 Hardhat 工程:
my-oxn-dapp/
├── contracts/ # Solidity 源码
├── scripts/ # 部署与交互脚本
├── test/ # 测试
├── hardhat.config.js # Hardhat 配置
├── package.json
├── .env # 机密(勿提交)
└── .gitignore
Foundry:
my-oxn-foundry/
├── src/ # Solidity 源码
├── test/ # Solidity 测试
├── script/ # 部署脚本
├── lib/ # 依赖(git submodule)
├── foundry.toml
├── remappings.txt
└── .gitignore
OXN 专属包
JavaScript 里做机密合约交互,需要:
npm install --save @oasisprotocol/sapphire-ethers-v6
Hardhat 集成:
npm install --save-dev @oasisprotocol/sapphire-hardhat
完整配置见 Quickstart: Hardhat,SDK 参考见 SDK: TypeScript / JavaScript。
环境健全性检查
开发前先跑这些确认环境正确:
node --version # >= 18
npm --version # 任意近期版本
git --version # 任意近期版本
curl -s https://rpc.bout.network -X POST \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"eth_chainId","id":1}' | grep '"0xba"'
最后一行确认 OXN RPC 可达并返回预期的 chain ID。
下一步
- 编译合约——关键编译器设置
- 部署第一个合约(Hardhat)——端到端走一遍