Ethereum JavaScript API
Go to file
Gav Wood 9a9987aeed Merge commit 'a1023a5dffee7c06e8b75a21f5c9b8826e820942' into develop
Conflicts:
	libjsqrc/ethereumjs/dist/ethereum.js.map
2015-01-11 18:18:05 +01:00
dist Merge commit 'a1023a5dffee7c06e8b75a21f5c9b8826e820942' into develop 2015-01-11 18:18:05 +01:00
example fixed example 2015-01-08 15:31:46 +01:00
lib Merge commit 'a1023a5dffee7c06e8b75a21f5c9b8826e820942' into develop 2015-01-11 18:18:05 +01:00
test Merge commit 'ab745d3b0eb89d67db1ed953020c665be3d072ed' into develop 2015-01-11 17:54:36 +01:00
.bowerrc Converted to node module 2014-11-05 19:46:01 +02:00
.editorconfig Updated bower.json & Readme 2014-11-05 22:33:28 +02:00
.gitignore merged subprotocol prefix 2014-11-11 10:30:21 +01:00
.jshintrc Converted to node module 2014-11-05 19:46:01 +02:00
.npmignore Refactoring 2014-11-06 22:51:37 +02:00
.travis.yml Merge commit 'ab745d3b0eb89d67db1ed953020c665be3d072ed' into develop 2015-01-11 17:54:36 +01:00
LICENSE Converted to node module 2014-11-05 19:46:01 +02:00
README.md Merge commit 'ab745d3b0eb89d67db1ed953020c665be3d072ed' into develop 2015-01-11 17:54:36 +01:00
bower.json Changed npm & bower version 2014-11-10 15:26:10 +02:00
gulpfile.js gulpfile modifications, default build set to dev 2015-01-07 14:13:29 +01:00
index.js fixes for node.js 2015-01-08 15:11:20 +01:00
package.json Merge commit 'ab745d3b0eb89d67db1ed953020c665be3d072ed' into develop 2015-01-11 17:54:36 +01:00

README.md

Ethereum JavaScript API

This is the Ethereum compatible JavaScript API using Promises which implements the Generic JSON RPC spec. It's available on npm as a node module and also for bower and component as an embeddable js

NPM version Build Status dependency status dev dependency status

Installation

Node.js

npm install ethereum.js

For browser

Bower

bower install ethereum.js

Component

component install ethereum/ethereum.js
  • Include ethereum.min.js in your html file.
  • Include es6-promise or another ES6-Shim if your browser doesn't support ECMAScript 6.

Usage

Require the library:

var web3 = require('web3');

Set a provider (QtProvider, WebSocketProvider, HttpRpcProvider)

var web3.setProvider(new web3.providers.WebSocketProvider('ws://localhost:40404/eth'));

There you go, now you can use it:

web3.eth.coinbase.then(function(result){
  console.log(result);
  return web3.eth.balanceAt(result);
}).then(function(balance){
  console.log(web3.toDecimal(balance));
}).catch(function(err){
  console.log(err);
});

For another example see example/index.html.

Contribute!

Requirements

  • Node.js
  • npm
  • gulp (build)
  • mocha (tests)
sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm
sudo apt-get install nodejs-legacy

Building

npm run-script build

Testing

npm test

Please note this repo is in it's early stage.

If you'd like to run a WebSocket ethereum node check out go-ethereum.

To install ethereum and spawn a node:

go get github.com/ethereum/go-ethereum/ethereum
ethereum -ws -loglevel=4