web3.js README

The project's README from github.com/web3/web3.js. As one markdown file: README.md.

web3.js

Web3.js

Web3.js libraries are being sunset on March 4th, 2025. For migration guides and more details please refer to Chainsafe blog

Dependency Status Unit Test Coverage Commit Activity Contributors

ES Version Node Version

Web3.js is a TypeScript implementation of the Ethereum JSON RPC API and related tooling maintained by ChainSafe Systems.

Installation

You can install the package either using NPM or using Yarn

If you wanna checkout latest bugfix or feature, use npm install web3@dev

Using NPM

npm install web3

Using Yarn

yarn add web3

Getting Started

Prerequisites

Migration Guide

Architecture Overview

Package Version License Docs Description
web3 npm License: LGPL v3 documentation :rotating_light: Entire Web3.js offering (includes all packages)
web3-core npm License: LGPL v3 documentation Core functions for web3.js packages
web3-errors npm License: LGPL v3 documentation Errors Objects
web3-eth npm License: LGPL v3 documentation Modules to interact with the Ethereum blockchain and smart contracts
web3-eth-abi npm License: LGPL v3 documentation Functions for encoding and decoding EVM in/output
web3-eth-accounts npm License: LGPL v3 documentation Functions for managing Ethereum accounts and signing
web3-eth-contract npm License: LGPL v3 documentation The contract package contained in web3-eth
web3-eth-ens npm License: LGPL v3 documentation Functions for interacting with the Ethereum Name Service
web3-eth-iban npm License: LGPL v3 documentation Functionality for converting Ethereum addressed to IBAN addressed and vice versa
web3-eth-personal npm License: LGPL v3 documentation Module to interact with the Ethereum blockchain accounts stored in the node
web3-net npm License: LGPL v3 documentation Functions to interact with an Ethereum node's network properties
web3-providers-http npm License: LGPL v3 documentation Web3.js provider for the HTTP protocol
web3-providers-ipc npm License: LGPL v3 documentation Web3.js provider for IPC
web3-providers-ws npm License: LGPL v3 documentation Web3.js provider for the Websocket protocol
web3-rpc-methods npm License: LGPL v3 documentation RPC Methods
web3-types npm License: LGPL v3 documentation Shared useable types
web3-utils npm License: LGPL v3 documentation Useful utility functions for Dapp developers
web3-validator npm License: LGPL v3 documentation Utilities for validating objects

Package.json Scripts

Script Description
clean Uses rimraf to remove dist/
build Uses tsc to build all packages
lint Uses eslint to lint all packages
lint:fix Uses eslint to check and fix any warnings
format Uses prettier to format the code
test Uses jest to run unit tests in each package
test:integration Uses jest to run tests under /test/integration in each package
test:unit Uses jest to run tests under /test/unit in each package
test:manual:long-connection-ws Runs manual tests for keeping a long WebSocket connection
test:manual Runs manual tests under test/manual in the web3 package

web3.js (web3/web3.js)

Searching Database…

19.9K ·GitHub
archived
What is this?A collection of TypeScript libraries for talking to the Ethereum blockchain through its JSON RPC API, plus utility functions for Dapp developers. It was maintained by ChainSafe Systems.
Is it one big library or a set of separate packages?A monorepo of about 17 packages: the umbrella 'web3' package bundles everything, while focused ones like web3-eth, web3-eth-contract and web3-utils can be used alone. HTTP, IPC and WebSocket connection providers are separate packages too.
How do I add it to a project?Run 'npm install web3' or the Yarn equivalent; to pick up the latest fixes use 'npm install web3@dev'.
What do I need installed before I can use it?Node.js is required — the code targets Node >= 14, and the README suggests an LTS release such as Fermium. Yarn and Lerna are listed as prerequisites too, but only matter if you build the monorepo yourself.
Is Web3.js still actively developed?No — the libraries are being sunset on March 4th, 2025 and the GitHub repository is archived, so expect no further updates. The ChainSafe blog has the announcement and migration guides.
I learned from old tutorials that use the 1.x API — will that code still work?Not unchanged: the 4.x release introduced breaking changes, and the repo ships a migration guide that walks through them as a first step. For questions the README points to the project's Discord.
What can I do with it besides sending transactions?The packages cover the full Dapp surface: ABI encoding and decoding of EVM inputs and outputs, account management and signing, smart contract interaction, Ethereum Name Service lookups, Ethereum-to-IBAN address conversion, plus validation and utility helpers.
How does my app connect to an Ethereum node with it?Through pluggable providers shipped as separate packages: HTTP, IPC and WebSocket. The repo even has a manual test suite for keeping a long-lived WebSocket connection open.
Can I use it in a browser app like React?Yes — the README links a React App Example and a tree-shaking guide so you only bundle the parts you import, and the build pipeline produces a dedicated web build.
Creator
web3
Size
133.9 MB
Stars
19.9K
Age
12y
Commits · 90 Days