Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
web3-utils
Advanced tools
The web3-utils package provides utility functions for Ethereum dapps and other web3.js applications. It includes methods for unit conversion, address formatting, and encoding/decoding of data among other utilities.
Unit Conversion
Converts Wei to other units of Ether such as 'ether', 'gwei', etc.
const Web3Utils = require('web3-utils');
let etherValue = Web3Utils.fromWei('21000000000000', 'ether');
Address Formatting
Converts an Ethereum address to a checksum address to prevent case-sensitivity errors.
const Web3Utils = require('web3-utils');
let checksumAddress = Web3Utils.toChecksumAddress('0xfb6916095ca1df60bb79ce92ce3ea74c37c5d359');
Data Encoding and Decoding
Encodes data using SHA3 or other encoding methods.
const Web3Utils = require('web3-utils');
let encodedData = Web3Utils.sha3('Some data to be hashed');
Random Hex Strings
Generates a random hex string of a given size.
const Web3Utils = require('web3-utils');
let randomHex = Web3Utils.randomHex(32);
BN (BigNumber)
Creates a BigNumber instance which can handle large integers safely.
const Web3Utils = require('web3-utils');
let bigNumber = Web3Utils.toBN('123456');
Ethers is a complete Ethereum library and wallet implementation. It provides a similar set of utilities for unit conversion, address handling, and encoding/decoding data. It is often considered a lighter and more modular alternative to web3.js.
Ethereumjs-util is a collection of utility functions for Ethereum, such as account creation and conversion, transaction signing, and data encoding. It is a part of the ethereumjs suite of packages and is more focused on lower-level operations compared to web3-utils.
While not Ethereum-specific, bignumber.js is a general-purpose library for arbitrary-precision decimal and non-decimal arithmetic. It can be used in place of the BN (BigNumber) functionality provided by web3-utils.
This is a sub-package of web3.js.
web3-utils
This contains useful utility functions for Dapp developers.
You can install the package either using NPM or using Yarn
npm install web3-utils
yarn add web3-utils
const Web3Utils = require('web3-utils');
console.log(Web3Utils);
{
sha3: function(){},
soliditySha3: function(){},
isAddress: function(){},
...
}
Script | Description |
---|---|
clean | Uses rimraf to remove dist/ |
build | Uses tsc to build package and dependent packages |
lint | Uses eslint to lint package |
lint:fix | Uses eslint to check and fix any warnings |
format | Uses prettier to format the code |
test | Uses jest to run unit tests |
test:integration | Uses jest to run tests under /test/integration |
test:unit | Uses jest to run tests under /test/unit |
FAQs
Collection of utility functions used in web3.js.
We found that web3-utils demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.