finds.dev← search

// the find

wevm/wagmi

★ 6,721 · TypeScript · MIT · updated Jun 2026

Reactive primitives for Ethereum apps

Wagmi is the standard React/Vue hooks library for Ethereum dapp development, wrapping viem for type-safe contract interactions, wallet connections, and chain state management. It's the go-to choice if you're building a frontend that needs to talk to EVM chains — used in production by Uniswap, Polymarket, PancakeSwap, and others. The monorepo includes @wagmi/core (framework-agnostic), the React hooks package, connectors for MetaMask/WalletConnect/Coinbase/Safe, and a codegen CLI.

- TypeScript inference is genuinely impressive — contract ABIs typed as const propagate all the way through to return types and event arguments, catching mistakes at compile time rather than runtime

- The @wagmi/core package is framework-agnostic, so the query layer and actions work outside React; Vue support is included and the core is clean enough to wire into any state manager

- Test coverage is thorough with both runtime tests (.test.ts) and type-level tests (.test-d.ts) for most actions, which matters a lot when the correctness of type inference is half the value proposition

- The CLI codegen (wagmi generate) can pull ABIs directly from Foundry/Hardhat build artifacts or Etherscan and emit typed hooks, cutting out a lot of manual boilerplate for projects with many contracts

- Heavy peer dependency footprint: viem, TanStack Query, and the connector SDKs (WalletConnect alone is enormous) balloon bundle size fast; tree-shaking helps but a 'hello world' wallet connection still ships hundreds of KB

- Multi-chain UX is an afterthought — the API assumes one active chain per connector, so building apps where users genuinely operate across chains simultaneously requires fighting the abstractions rather than working with them

- Version churn has been painful; v1→v2 was a near-full rewrite, breaking changes show up in minor connector updates, and the CHANGELOG is honest about this but it means you're regularly budgeting migration time

- The connector ecosystem outside the four first-party ones (MetaMask, WalletConnect, Coinbase, Safe) relies on third-party packages of wildly varying quality — there's no official story for hardware wallets like Ledger/Trezor beyond EIP-1193 injected

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →