wevm/viem

TypeScript Interface for Ethereum

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 6 minutes ago
Added to GitGenius on September 19th, 2026
Created on July 22nd, 2022
Open Issues & Pull Requests: 13 (+0)
GitHub issues: Enabled
Number of forks: 1,532
Total Stargazers: 3,559 (+0)
Total Subscribers: 26 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.5 hours
Mean response time: 6.6 days
90th percentile: 9.6 days
Tracked items: 239

Most active contributors

Sign in to see contributor activity.

How this project is maintained

About 8% of issues opened in the past year have never received a reply. 98% of issues opened in the past year have since been closed. Three people close 94% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 0
Closed in 7 days: 1
Avg open age: 19 days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 1
Comments in 7 days: 1
Events in 7 days: 2

Top labels

  • needs reproduction (54)
  • A: Docs (23)
  • Good First Issue (9)
  • A: CI (1)
  • T: Bug (1)
  • github_actions (1)

Detailed Description

Viem is a TypeScript interface for Ethereum that provides abstractions over the JSON-RPC API to simplify blockchain development.

The tool solves the problem of verbose and error-prone Ethereum interaction by offering first-class APIs for smart contract interaction, ABI utilities for encoding and decoding, and wallet integration for browser extensions, WalletConnect, and private keys. It uses native JavaScript BigInt instead of requiring large BigNumber libraries, reducing dependencies and improving performance. The language and terminology align closely with official Ethereum standards, making the learning curve gentler for developers familiar with Ethereum concepts.

Viem suits TypeScript projects that need type-safe Ethereum interactions with strong IDE support. Developers should choose it if they value inferred types from ABIs and EIP-712 typed data, or if they're building applications that require seamless wallet integration. The tool includes first-class support for development environments like Anvil, Hardhat, and Ganache, and can run test suites against forked Ethereum networks, making it particularly valuable for comprehensive testing workflows.

The project maintains active development with consistent code quality standards. The maintainers prioritize comprehensive test coverage and regularly merge contributions that expand functionality and fix issues. Development activity shows sustained engagement with the codebase through ongoing refinements and feature additions.