用途:这是一份以太坊 dApp 从本地开发到生产上线的操作手册与技能流程,覆盖 fork 模式开发、IPFS 静态部署、Vercel 配置、ENS 子域名绑定以及上线前的完整检查清单。
主要能力:
- Fork 模式开发:用 yarn fork --network base 复制真实主网状态(含 Uniswap、Aave、USDC 等协议与代币),而非 yarn chain 的空白本地链;可用 cast rpc anvil_setIntervalMining 1 开启区块挖掘以支持时间相关逻辑。
- 项目脚手架:使用 npx create-eth@latest 自动生成 Foundry、Next.js、RainbowKit 与 scaffold hooks 项目。
- IPFS 部署:推荐路径,可规避 Vercel 内存限制;需配合 output: "export"、trailingSlash: true、images.unoptimized 等 Next.js 静态导出配置,使用 yarn bgipfs upload out 上传并保存 CID。
- Node 25+ 兼容:需提供 localStorage polyfill 文件并通过 NODE_OPTIONS="--require ./polyfill-localstorage.cjs" 注入构建进程。
- Vercel 部署:作为备选方案,需设 Root Directory 为 packages/nextjs、安装命令为 cd ../.. && yarn install,可用 vercel --prebuilt 规避内存溢出。
- ENS 子域名:通过 ENS 管理界面新建子域名并设置 IPFS 内容哈希(两次主网交易),可用 cast 命令校验链上内容哈希。
- 上线前检查:代码审查、OG 图片与元数据、清理并重新构建、部署后验证路由与网关响应、交付与报告。
使用方式与限制:需在 Three Terminals 下依次运行 fork、deploy、start;Fork 模式下前端 targetNetworks 必须为 chains.foundry(链 ID 31337),仅在真正部署时才切换到 chains.base;IPFS 路由依赖 trailingSlash: true 与页面可静态预渲染;任何代码改动后必须清理 .next 与 out 并重新构建,否则会部署陈旧产物;Node 25+ 与部分页面(如 blockexplorer)可能在静态导出时崩溃。具体工具、命令与配置细节以资料为准,未提供的费用与托管细节暂未说明。