Skip to content
Conflux JavaScript API, under active development
Branch: master
Clone or download
Pull request Compare This branch is 2791 commits ahead, 39 commits behind ethereum:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets
packages
.editorconfig
.eslintignore
.eslintrc.json
.gitignore
.prettierrc
.travis.yml
ISSUE_TEMPLATE.md
LICENSE
PULL_REQUEST_TEMPLATE.md
README.md
jest.config.js
jest.preprocessor.js
lerna.json
package-lock.json
package.json
rollup.config.js

README.md

Web3.js logo

web3.js - Ethereum JavaScript API

npm Build Status Coverage Status Join the chat at https://gitter.im/ethereum/web3.js

This is the Ethereum JavaScript API which connects to the Generic JSON RPC spec.

You need to run a local or remote Ethereum node to use this library.

Please read the documentation for more.

Installation

Node

npm install web3

Yarn

yarn add web3

Meteor

meteor npm install --save web3@1.x

Usage

import Web3 from 'web3';

const web3 = new Web3('ws://localhost:8546');
console.log(web3);
> {
    eth: ... ,
    utils: ...,
    ...
}

Additionally you can set a provider using web3.setProvider() (e.g. WebsocketProvider)

web3.setProvider('ws://localhost:8546');
// or
web3.setProvider(new Web3.providers.WebsocketProvider('ws://localhost:8546'));

There you go, now you can use it:

web3.eth.getAccounts()
.then(console.log);

Usage with TypeScript

We support types within the repo itself. Please open an issue here if you find any wrong types.

You can use web3.js as follows:

import Web3 from 'web3';
const web3 = new Web3("ws://localhost:8546");

If you are using the types in a commonjs module like for example a node app you just have to enable esModuleInterop in your tsconfig compile option, also enable allowSyntheticDefaultImports for typesystem compatibility:

"compilerOptions": {
    "allowSyntheticDefaultImports": true,
    "esModuleInterop": true,
    ....

Documentation

Documentation can be found at read the docs

Contributing

  • All contributions have to go into the 1.0 branch
  • Please follow the code style of the other files, we use 4 spaces as tabs.

Requirements

Commands

npm run clean // removes all the node_modules folders in all modules
npm run bootstrap // install all dependencies and symlinks the internal modules for all modules
npm run test // runs all tests 
npm run build // runs rollup
npm run dev // runs rollup with a watcher

Support

browsers node

Community

Similar libraries in other languages

You can’t perform that action at this time.