Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/freewil/node-bitcoin
UNMAINTAINED - See: https://github.com/ruimarinho/bitcoin-core - Communicate with bitcoind via JSON-RPC
https://github.com/freewil/node-bitcoin
Last synced: 25 days ago
JSON representation
UNMAINTAINED - See: https://github.com/ruimarinho/bitcoin-core - Communicate with bitcoind via JSON-RPC
- Host: GitHub
- URL: https://github.com/freewil/node-bitcoin
- Owner: freewil
- License: unlicense
- Archived: true
- Fork: true (jb55/node-bitcoin)
- Created: 2012-06-21T15:59:13.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2018-05-13T20:35:58.000Z (over 6 years ago)
- Last Synced: 2024-11-04T01:02:59.725Z (about 1 month ago)
- Language: JavaScript
- Homepage:
- Size: 133 KB
- Stars: 324
- Watchers: 30
- Forks: 89
- Open Issues: 2
-
Metadata Files:
- Readme: Readme.md
- Changelog: Changelog.md
- License: LICENSE
Awesome Lists containing this project
- awesome-cryptocoinjs - bitcoin
README
# node-bitcoin
[![travis][travis-image]][travis-url]
[![npm][npm-image]][npm-url]
[![downloads][downloads-image]][downloads-url]
[![js-standard-style][standard-image]][standard-url][travis-image]: https://travis-ci.org/freewil/node-bitcoin.svg?branch=master
[travis-url]: https://travis-ci.org/freewil/node-bitcoin[npm-image]: https://img.shields.io/npm/v/bitcoin.svg?style=flat
[npm-url]: https://npmjs.org/package/bitcoin[downloads-image]: https://img.shields.io/npm/dm/bitcoin.svg?style=flat
[downloads-url]: https://npmjs.org/package/bitcoin[standard-image]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat
[standard-url]: http://standardjs.comnode-bitcoin is a simple wrapper for the Bitcoin client's JSON-RPC API.
**Unmaintained, please see [bitcoin-core](https://github.com/ruimarinho/bitcoin-core)**
The API is equivalent to the API document [here](https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_Calls_list).
The methods are exposed as lower camelcase methods on the `bitcoin.Client`
object, or you may call the API directly using the `cmd` method.## Install
`npm install bitcoin`
## Examples
### Create client
```js
// all config options are optional
var client = new bitcoin.Client({
host: 'localhost',
port: 8332,
user: 'username',
pass: 'password',
timeout: 30000
});
```### Get balance across all accounts with minimum confirmations of 6
```js
client.getBalance('*', 6, function(err, balance, resHeaders) {
if (err) return console.log(err);
console.log('Balance:', balance);
});
```
### Getting the balance directly using `cmd````js
client.cmd('getbalance', '*', 6, function(err, balance, resHeaders){
if (err) return console.log(err);
console.log('Balance:', balance);
});
```### Batch multiple RPC calls into single HTTP request
```js
var batch = [];
for (var i = 0; i < 10; ++i) {
batch.push({
method: 'getnewaddress',
params: ['myaccount']
});
}
client.cmd(batch, function(err, address, resHeaders) {
if (err) return console.log(err);
console.log('Address:', address);
});
```## SSL
See [Enabling SSL on original client](https://en.bitcoin.it/wiki/Enabling_SSL_on_original_client_daemon).If you're using this to connect to bitcoind across a network it is highly
recommended to enable `ssl`, otherwise an attacker may intercept your RPC credentials
resulting in theft of your bitcoins.When enabling `ssl` by setting the configuration option to `true`, the `sslStrict`
option (verifies the server certificate) will also be enabled by default. It is
highly recommended to specify the `sslCa` as well, even if your bitcoind has
a certificate signed by an actual CA, to ensure you are connecting
to your own bitcoind.```js
var client = new bitcoin.Client({
host: 'localhost',
port: 8332,
user: 'username',
pass: 'password',
ssl: true,
sslStrict: true,
sslCa: fs.readFileSync(__dirname + '/myca.cert')
});
```