Skip to content
轻量级, 可组合, 和 类型安全以及模块化的以太坊接口
来创建可靠的应用和库。
bash
npm i viem
npm i viem
bash
pnpm i viem
pnpm i viem
bash
bun i viem
bun i viem
模块化
使用可组合的模块来快速构建应用程序和库
轻量级
优化包大小,通过tree-shaking去除无用模块
查看更多
高效的
与其他替代库相比,拥有更加优化的架构
类型化的APIs
使用完善的强类型的TypeScript来实现程序化API

概览


ts
// 1. 导入模块.
import { createPublicClient, http } from 'viem'
import { mainnet } from 'viem/chains'

// 2. 使用你需要的链和传输方式来设置(公共)客户端.
const client = createPublicClient({
  chain: mainnet,
  transport: http(),
})

// 3. 实现一个功能!
const blockNumber = await client.getBlockNumber()
// 1. 导入模块.
import { createPublicClient, http } from 'viem'
import { mainnet } from 'viem/chains'

// 2. 使用你需要的链和传输方式来设置(公共)客户端.
const client = createPublicClient({
  chain: mainnet,
  transport: http(),
})

// 3. 实现一个功能!
const blockNumber = await client.getBlockNumber()

特性


viem支持下面所有的开箱即用的功能:

  • 提供JSON-RPC API的抽象,让开发工作更轻松
  • 提供一流的APIs与智能合约交互
  • 语言与官方以太坊术语同步密切相关 Ethereum terminology
  • 可以导入你的浏览器扩展, WalletConnect 或者私钥钱包
  • 使用浏览器本地的BigInt,而不是庞大的BigNumber库
  • 提供处理ABIs(编码/解码/检查)的工具
  • 使用TypeScript(从ABI和EIP-712 infer types中进行类型推断)
  • 完美支持AnvilHardhat 以及 Ganache
  • 针对分叉以太坊网络运行的测试套件

社区


查看下面的信息以获取更多与wagmi相关的内容:

支持


帮助支持未来的发展并使 wagmi 成为一个可持续的开源项目:

赞助商


可以在MIT许可下分发.