What is web3-net?
The web3-net package is a sub-package of the web3.js library that provides network-related functionalities for interacting with Ethereum nodes. It allows developers to retrieve information about the network, such as the network ID, peer count, and listening status.
What are web3-net's main functionalities?
Get Network ID
This feature allows you to retrieve the network ID of the connected Ethereum network. The network ID is a unique identifier for different Ethereum networks (e.g., Mainnet, Ropsten, Rinkeby).
const Web3 = require('web3');
const web3 = new Web3('http://localhost:8545');
web3.eth.net.getId().then(console.log);
Get Peer Count
This feature allows you to get the number of peers currently connected to the Ethereum node. This can be useful for monitoring the health and connectivity of your node.
const Web3 = require('web3');
const web3 = new Web3('http://localhost:8545');
web3.eth.net.getPeerCount().then(console.log);
Check if Node is Listening
This feature checks if the Ethereum node is currently listening for network connections. It returns a boolean value indicating the listening status.
const Web3 = require('web3');
const web3 = new Web3('http://localhost:8545');
web3.eth.net.isListening().then(console.log);
Other packages similar to web3-net
ethers
The ethers.js library is a complete and compact library for interacting with the Ethereum blockchain. It provides similar functionalities to web3-net, such as network information retrieval, but also includes additional features like contract interaction, wallet management, and utilities for working with Ethereum data structures.
ethjs
Ethjs is a highly modular and lightweight library for interacting with the Ethereum network. It offers similar network-related functionalities as web3-net, such as retrieving network ID and peer count, but is designed to be more modular and minimalistic, allowing developers to include only the parts they need.
web3
The web3.js library is the parent package of web3-net and provides a comprehensive suite of tools for interacting with the Ethereum blockchain. It includes all the functionalities of web3-net along with additional modules for contract interaction, account management, and more.
web3-net
This is a sub-package of web3.js.
This is the net package used in other web3.js packages.
Please read the documentation for more.
Installation
Node.js
npm install web3-net
Usage
const Web3Net = require('web3-net');
const net = new Web3Net('ws://localhost:8546');
Types
All the TypeScript typings are placed in the types
folder.