Note
This documentation is work in progress and web3.js 1.0 is not yet released! You can find the current documentation for web3 0.x.x at github.com/ethereum/wiki/wiki/JavaScript-API.
Getting Started¶
The web3.js library is a collection of modules which contain specific functionality for the ethereum ecosystem.
- The
web3-ethis for the ethereum blockchain and smart contracts - The
web3-shhis for the whisper protocol to communicate p2p and broadcast - The
web3-bzzis for the swarm protocol, the decentralized file storage - The
web3-utilscontains useful helper functions for Dapp developers.
Adding web3.js¶
First you need to get web3.js into your project. This can be done using the following methods:
- npm:
npm install web3 - meteor:
meteor add ethereum:web3 - pure js: link the
dist/web3.min.js
After that you need to create a web3 instance and set a provider.
Ethereum supported Browsers like Mist or MetaMask will have a ethereumProvider or web3.currentProvider available, web3.js is setting this one to Web3.givenProvider.
If this property is null you need to connect to a remote/local node.
// in node.js use: var Web3 = require('web3');
var web3 = new Web3(Web3.givenProvider || "ws://localhost:8546");
That’s it! now you can use the web3 object.