Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Stable 上的合约

Stable 完全兼容 EVM。Solidity、Vyper、Hardhat、Foundry、ethers.js 和 viem 都可以原样使用。一旦您将工具指向 Stable 的 RPC,现有合约就可以按原样部署。在标准 EVM 的基础上,Stable 将协议级模块(银行、分发、质押)作为预编译合约暴露在固定地址,因此您的 Solidity 可以调用质押和奖励分发,而无需重新实现它们。

您可以构建什么

  • 标准应用合约 (ERC-20, ERC-721, 托管, AMM),使用任何 EVM 工具链。
  • 通过 ethers.js 在 Stablescan 上已验证、已索引的合约,带有实时事件流。
  • 协议集成合约,从 Solidity 调用银行/分发/质押预编译。
  • 系统交易监听器,通过标准的 eth_getLogs 监听协议发出的事件(例如,解除绑定完成)。

Stable 的不同之处

  • USDT0 是 Gas 代币。 maxPriorityFeePerGas 必须为 0。原生转账中的 value 字段承载的是 USDT0,而不是 ETH。请参阅使用 USDT0 作为 Gas
  • USDT0 具有双重身份。 持有原生 USDT0 的合约可以通过 ERC-20 transferFrompermit 更改其余额。切勿在 uint256 中镜像原生余额。请参阅Stable 上的 USDT0 行为
  • 预编译地址在测试网和主网中是固定的。 将它们作为常量烧录到您的合约中。

从这里开始

  • 部署:搭建 Foundry,配置 Stable,并部署 Counter。
  • 验证:使用 forge verify-contract 将源代码上传到 Stablescan。
  • 索引:使用 ethers.js 订阅事件并回填历史日志。

下一步建议