#ethereum #crypto #wasm #web3 #walletconnect

ethers-web

用于在 Web 中注入和 walletconnect dApp 连接的 WASM 库

6 个版本

0.2.1 2024 年 7 月 4 日
0.2.0 2024 年 6 月 21 日
0.1.3 2024 年 6 月 3 日
0.1.2 2024 年 4 月 23 日

#1935 in 魔法豆

Download history 292/week @ 2024-04-13 249/week @ 2024-04-20 10/week @ 2024-04-27 45/week @ 2024-05-04 29/week @ 2024-05-11 44/week @ 2024-05-18 15/week @ 2024-05-25 176/week @ 2024-06-01 26/week @ 2024-06-08 95/week @ 2024-06-15 60/week @ 2024-06-22 104/week @ 2024-06-29 29/week @ 2024-07-06 1/week @ 2024-07-13 65/week @ 2024-07-27

每月 137 次下载

MIT/Apache

67KB
1.5K SLoC

快速入门

将此添加到您的 Cargo.toml

[dependencies]
ethers-web = "0.2"

根据您使用的 Web 框架,您可能需要启用适当的功能。

对于 yew,您只需首先启用其功能即可

[dependencies]
ethers-web = { version = "0.2", features = [ "yew" ] }

examples 文件夹中,您将找到一个使用 yew::UseEthereum 的示例 yew 应用程序,这将允许您连接到所选钱包,并通过使用 next() 函数从消息循环中获取消息来维护其生命周期。

由于 yewleptos 在它们的 WASM 生命周期中,因此库不提供自己的消息循环。

ethers-web 中实现了两种钱包标准。

EIP 1193

Eip1193 是一种嵌入式钱包标准,如 Metamask。要连接到它,您只需调用 connect() 方法,并将连接的上下文提供者作为 ethers 调用中的任何其他提供者附加。

WalletConnect

WalletConnect 需要进行比仅建立连接更多的设置。您需要 PROJECT_ID 和额外的 RPC_URL,这将处理钱包可能不支持的一般 RPC 调用。

示例

只需检查 examples 文件夹,即可找到您可以在应用程序中使用示例实现。

文档

正在创建中。目前请检查 examples 文件夹以获取关于 leptosyew 框架的实现细节

特性

  • EIP1193 注入钱包实现
  • WalletConnect
  • 适当的 Leptos 支持
  • 文档

关于 WASM 的说明

该库目前需要 WASM 才能工作。虽然有一个计划来支持服务器端实现,但目前的重点是构建针对网站 WASM 实现的稳健解决方案。

依赖项

~39–59MB
~1M SLoC