
ApeWorX: 新的基于 Python 语言的区块链开发框架
Brownie 是 Python 开发人员经常使用智能合约框架。现在出现了一个 Brownie 的继任者,可以让 Python Web3 开发人员获得更好的体验。
在本文中,我将讨论这个Brownie的继任者ApeWorX(https://www.apeworx.io/),也称为“Ape”。
ApeWorX 是一个基于 Python 的智能合约开发和部署框架,有很强的可定制性和安全的私钥管理机制。
你们中的许多人都知道我(Patrick Collins)很喜欢 Python,所以在进入 Web3 领域后,我爱上了 Brownie 框架。自从我进入这个领域以来,似乎所有原创的 Web3 框架都是两种结果:已经成功或者被另一个竞争对手替换:
DappTools 正式承认 Foundry 作为其继任者。
在 Truffle 流行过很长一段时间之后,Hardhat 成为了 DeFi 中最常用的框架。
ApeWorX 似乎有朝一日会成为 Brownie 框架的继任者。
以太坊 Python 社区是协作性最强、成员之间联系最紧密的社区之一。在 Ape contributor 中可以看到许多 Vyper 和 Brownie 的 contributor,包括 Doggie B、Banteg 和 Skellet0r(甚至还有我自己!)
此外,Python 爱好者和 Curve 等 DeFi 协议都开始使用 Ape 作为其智能合约的框架。
今天,我们将从 Brownie 用户的角度对 ApeWorX 进行快速的了解和学习。
快速了解
你可以在 Chainlink 的 repo ApeWorX-starter-kit(https://github.com/smartcontractkit/apeworx-starter-kit) 中找到一个最简 ApeWorX & Vyper 模板,其中包含代码示例以帮助你快速了解。
使用 pipx install eth-ape 或 pip 安装 ape 后,你就可以访问 ape 命令行界面了。
初始化一个新项目的最快方法是使用 ape init,它会生成一个空白配置的项目文件夹,如下所示:
.
├── ape-config.yaml
├── contracts
├── scripts
└── tests
以下是每个文件夹包含的内容:
Contracts:你所有的 Vyper、Solidity 或其他合约文件都将放在这里。
Scripts:所有 Python 代码的存放位置。
Tests:你的 Python 测试文件。
ape-config.yaml:项目的配置文件。就类似于 brownie-config.yaml 或 hardhat.config.js。
在 scripts 文件夹中,你可以写一个如下的文件:
def main():
print("Hello!")
在 ape 中想要运行任何一个 Python 脚本,运行:
ape run scripts/my_script.py
Ape 的插件系统
默认情况下,Ape 没有 Vyper、Solidity 或任何其他东西,而是需要使用插件系统使得 ApeWorX 完全可定制,以满足开发者特定的智能合约开发需求。两个最受欢迎的插件是用于 Solidity 和 Alchemy 的插件,它们允许你编译 Solidity 智能合约并且轻松通过 Alchemy 部署。
ape plugins install solidity alchemy
当你完成配置以后,你可以在 Contracts 文件夹中编写 Solidity 的合约然后对其进行编译。
ape compile
Networks
Ape 采用特定方法处理 network。大多数框架,包括 Hardhat、Brownie 和 Foundry,都以类似的方式处理 EVM 链,但 ApeWorX 是不同的。
ApeWorX 将 network 分成生态系统和链。例如,以太坊生态系统分为 mainnet、ropsten、kovan、goerli 等。如果你想使用 Fantom 之类的 network,你可以安装 fantom 的 network 插件:
ape plugins install fantom
然后在 ape 网络中,你会看到一个新的 network 列表:
fantom
├── opera
│ └── geth (default)
├── testnet
│ └── geth (default)
└── local (default)
└── test (default)
如果你不想为某个 network 安装插件,也可以使用临时方法,只需将 RPC URL 配置到network 中。这样 ape 就会认为这个网络是可以发送交易的。
ape run scripts/my_script.py –network https://my_rpc_url.com
账户
框架之间最大的区别之一是它们如何处理帐户。大多数框架都让你设置一个 .env 文件来存储私钥。但是,将您的私钥放在 .env 中其实一直困扰着开发人员。你也可以在 ape 中执行此操作,但 ape 的默认的设置方式更加安全。
Ape 允许你导入私钥,然后它将私钥加密并将存储在你的计算机上。每当您想使用该帐户或私钥时,您都需要密码来解密。这意味着再也不会不小心将你的密钥 push 到 GitHub 了!
ape accounts import my_key
然后它会提示你输入密钥和密码。在你的 Python 脚本中,您可以使用 load 函数来获取你的私钥。
from ape import accounts
accounts.load("local-default")
当你运行这个脚本的时候,会有提示让你输入密码。
其他
框架的其余部分可能和你预期的使用习惯差不多。你可以使用 pytest(最流行的 Python 测试框架之一)编写测试。你可以进入 ape console,在 Python 环境中使用 shell 与你所选择的网络交互。
Ape 中有你希望从智能合约开发框架中获得的所有功能。
Ape 是框架领域的新成员,它也是一个很棒的 Repo,你可以去 contribute。如果你喜欢 Python 并且对如何改进 ape 有想法,请去提一个 issue、PR,或者给他们一个 star!
Happy Ape-ing!
比推快讯
更多 >>- 白宫经济顾问:部分贸易谈判可能会超过截止日期
- “内幕巨鲸”被多次清算后的目前残余仓位降至 4734 万美元
- 分析:BTC 内存池中交易数量与去年底相比明显减少,或有潜在危机
- 美国财长贝森特:马斯克应该专注于商业
- 分析师:WLFI 测试添加流动性为不实消息
- 比特币回升触及 10.9 万美元
- 美财长贝森特:若 8 月 1 日前未达成协议,关税将恢复至 4 月份水平
- 美国财长贝森特:将由美联储决定是否降息
- 人工智能交易市场 olaxbt 完成 338 万美元种子轮融资,Amber Group 领投
- 消息人士:美国和印度小型贸易协议谈判已经完成,平均关税税率或为 10%
- 美国财政部长:100 个较小的国家将获得固定的关税税率
- 疑似 Abraxas Capital 标记地址向 Kraken 转入 1000 枚 BTC
- 美国财政部长:贸易谈判进入最后阶段
- 某巨鲸循环做多 ETH,过去 2 小时建仓 2304.3 枚 stETH
- 马斯克已向美国联邦选举委员会提交美国党组织声明
- 马斯克发文询问“美国党”首次代表大会应在何时何地举行
- Boom 基金会:已完成 BOOM 代币空投资格快照
- 港媒:Circle 上市一个月录得逾 5 倍涨幅,光大控股于 2016 年成为其股东
- Michael Saylor 再次发布比特币 Tracker 信息,下周或将披露增持数据
- 中信建投:美股代币化大爆发,券商 IT 改造需求有望加速释放
- LetsbonkFun 以 45.7% 市场份额登顶,24 小时交易量达 4.02 亿美元
- 人大金融科技研究所:促进可控稳定币与数字人民币互通互认
- 劳埃德银行:下周美联储会议纪要或不会改变 7 月不降息市场预期
- Cartwright 建议英国首个 DB 养老基金将 3%资金投入配置 BTC
- 疑似 Arthapala 地址过去 5 小时再次向各大交易所充值 5850 枚 ETH
- Vitalik Buterin 联合发起 EIP-7983 提案,拟增强网络抗 DoS 攻击能力
- 美国党构想曝光:马斯克称打破两党垄断并不难
- 陈茂波:香港上市 ETP 锚定资产包括数字资产,也有追踪 Coinbase 等美股产品
- 近期沪深两市多家上市公司频繁被询问是否布局稳定币业务
- Endless Clouds 基金会:END 转账功能拟于 24 小时内生效
- 比特币于 65 分钟前在高度 904263 处挖出空区块
- 分析:马斯克成立“美国党”或需数年时间来解决法律和经济层面的困难
- 本周美国以太坊现货 ETF 净流入 2.191 亿美元
- 观点:马斯克虽有巨额财富和影响力,但历史上美国第三党很难成功
- 转移逾 8 万枚 BTC 的远古巨鲸疑似升级旧钱包,暂无抛售迹象
- 前 DigitalMint 勒索软件谈判专家被指控与黑客合谋敲诈受害者,遭美国司法部调查
- Toncoin 与阿联酋合作,向 TON 质押者提供 10 年黄金签证
- Polymarket 上预测WLFI 代币上线首日后 FDV 超过 130 亿美元概率达 56%
- Bankless 联创:以太坊 MEV 最小化投资或助力传统金融采纳
- Hash Epoch 平台代币 HEST 将于 7 月 9 日全网上线交易
- Matrixport 近 1 小时从 Binance 提取 1500 万 USDT
- 印度捣毁“最多产的暗网毒品集团”,嫌疑人使用门罗币洗钱
- 观点:因加密禁令没收中国用户 FTX 索赔资金缺乏法律依据,FTX 债权以美元计价并结算
- ZachXBT:不承接 Sui 生态相关案件,在该生态系统未得到支持
- 沉寂两年的鲸鱼向 Kraken 转入 230 枚 ETH,价值约 57.9 万美元
- 某巨鲸清仓 21.6 万枚 HYPE,亏损 29 万美元
- Miller Value Partners 首席投资官 Bill Miller IV 质疑比特币征税合理性
- Binance Alpha 昨日交易量报 4.586 亿美元,BR、KOGE、CARV 分列前三
- 马斯克暗示美国党将参与明年中期选举
- RootData:BB 将于一周后解锁价值约 385 万美元的代币