
A complete and compact JavaScript library for interacting with the Ethereum blockchain and ecosystem.
ethers.js is a lightweight, fully featured JavaScript library designed to facilitate interaction with the Ethereum blockchain and its ecosystem. It provides developers with tools to manage wallets, sign transactions, interact with smart contracts, and connect to Ethereum nodes via JSON-RPC or popular providers like INFURA, Alchemy, Etherscan, Ankr, and MetaMask. The library is fully written in TypeScript, offering strict typing for improved security and developer experience. It supports importing and exporting JSON wallets and mnemonic phrases, including hierarchical deterministic (HD) wallets in multiple languages.
The library's modular design allows developers to include only the components they need, optimizing bundle size and performance. ethers.js treats Ethereum Name Service (ENS) names as first-class citizens, enabling seamless use of human-readable names anywhere an Ethereum address is accepted. It supports contract interaction through meta-classes generated from any contract ABI, including ABIv2 and human-readable ABIs, simplifying contract calls and event handling.
What sets ethers.js apart is its comprehensive provider support, allowing connections to Ethereum nodes through various backends with default API keys for quick starts, while encouraging developers to use their own keys for enhanced features like archival data and analytics. The library also offers extension packages for advanced use cases such as multicall batching, hardware wallet integration, and Optimism Layer 2 utilities. Extensive documentation, active maintenance, and a large community contribute to its widespread adoption in dapps, wallets, and developer tools across the Ethereum ecosystem.
Developers building Ethereum-based applications face challenges in securely managing private keys, efficiently interacting with smart contracts, and connecting reliably to Ethereum nodes. Fragmented tooling and lack of comprehensive, easy-to-use libraries can slow development and introduce security risks.
Import/export JSON wallets and mnemonic phrases; supports HD wallets in multiple languages.
Automatically generates JavaScript objects from any contract ABI for easy method calls and event handling.
Connects via JSON-RPC, INFURA, Alchemy, Etherscan, Ankr, Cloudflare, MetaMask, and more.
Additional modules for multicall batching, hardware wallet support, Layer 2 utilities, and in-memory blockchain simulation.
Developers use ethers.js to interact with smart contracts, manage user wallets, and query blockchain data within dapps.
Wallet developers leverage ethers.js for secure key management, transaction signing, and integration with hardware wallets.
Analytics platforms use ethers.js to fetch on-chain data, listen to events, and decode contract interactions.
Discover trusted tools and services in the QuickNode Marketplace. Everything you need to launch faster and scale smarter.
Explore web3 competitors and apps like Ethers.js.

A Document Object Model for Web APIs designed to simplify API consumption and integration.

0x provides battle-tested APIs to embed fast, gasless, and deeply liquid crypto trading into decentralized applications.
Blast API is a decentralized Web3 infrastructure platform providing geographically distributed blockchain node APIs to improve reliability and latency.

The Graph is a decentralized indexing protocol that organizes blockchain data and makes it easily accessible via GraphQL.
Virtually operated Web3 networks that replicate real blockchain networks for development, testing, and staging without using real assets.

Connext is a secure, fast modular interoperability protocol enabling cross-chain fund bridging and asynchronous Solidity development.
Rarible API is a fast, unified NFT API infrastructure providing real-time data and executable market features across Ethereum, Base, Polygon, and more than 10 other chains.

A fully managed, customizable rollup deployment platform providing scalable, secure, and high-performance blockchain infrastructure.

Network APIs provides web3 developer tools focused on blockchain network interactions and API services.
Open Source | |
|---|---|
| Price (Monthly) | Free |
| Price (Annual) | Free |
| Messaging | N/A |
| Support | Community support via GitHub and Discord |
| Analytics |
ethers.js offers extensive documentation, tutorials, migration guides, and a rich set of examples to help developers get started and deepen their understanding of Ethereum development.
| Composability | |||
| Cross-Chain | |||
| Customizability | |||
| Developer Support | |||
| Ease of Integration | |||
| Performance |