A pure and powerful JavaScript CLAM library
Pull request Compare This branch is 115 commits behind bitpay:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
benchmark
docs
lib
test
.coveralls.yml
.gitignore
.jsdoc.conf
.jshintrc
.travis.yml
.zuul.yml
CONTRIBUTING.md
LICENSE
README.md
bower.json
gulpfile.js
index.js
karma.conf.js
npm-shrinkwrap.json
package.json

README.md

Bitcore

NPM Package Build Status Coverage Status

A pure and powerful JavaScript Bitcoin library.

Principles

Bitcoin is a powerful new peer-to-peer platform for the next generation of financial technology. The decentralized nature of the Bitcoin network allows for highly resilient bitcoin infrastructure, and the developer community needs reliable, open-source tools to implement bitcoin apps and services.

Get Started

npm install bitcore

Using it in Node.js:

var bitcore = require('bitcore');

assert(bitcore.Address.isValid('126vMmY1fyznpZiFTTnty3cm1Rw8wuheev'));
var simpleTx = new bitcore.Transaction();
var simpleTx.from(unspent).to(address, amount);
simpleTx.sign(privateKey);

Documentation

The complete docs are hosted here: bitcore documentation. There's also a bitcore API reference available generated from the JSDocs of the project, where you'll find low-level details on each bitcore utility.

To get community assistance and ask for help with implementation questions, please use our community forums.

Examples

Modules

This module provides bitcoin's core features. Other features and protocol extensions are built into separate modules. Here is a list of official bitcore modules:

Module Version Building Coverage
bitcore-payment-protocol NPM Package Build Status Coverage Status
bitcore-p2p NPM Package Build Status Coverage Status
bitcore-mnemonic NPM Package Build Status Coverage Status
bitcore-ecies NPM Package Build Status Coverage Status
bitcore-channel NPM Package Build Status Coverage Status
bitcore-explorers NPM Package Build Status Coverage Status
bitcore-message NPM Package Build Status Coverage Status

Security

We're using Bitcore in production, as are many others, but please use common sense when doing anything related to finances! We take no responsibility for your implementation decisions.

If you find a security issue, please email security@bitpay.com.

Contributing

Please send pull requests for bug fixes, code optimization, and ideas for improvement. For more information on how to contribute, please refer to our CONTRIBUTING file.

Building the Browser Bundle

To build bitcore full bundle for the browser:

gulp browser

This will generate files named bitcore.js and bitcore.min.js.

You can also use our pre-generated files, provided for each release along with a PGP signature by one of the project's maintainers. To get them, checkout a release commit (for example, https://github.com/bitpay/bitcore/commit/e33b6e3ba6a1e5830a079e02d949fce69ea33546 for v0.12.6).

To verify signatures, use the following PGP keys:

Development & Tests

git clone https://github.com/bitpay/bitcore
cd bitcore
npm install

Run all the tests:

gulp test

You can also run just the Node.js tests with gulp test:node, just the browser tests with gulp test:browser or create a test coverage report (you can open coverage/lcov-report/index.html to visualize it) with gulp coverage.

License

Code released under the MIT license.

Copyright 2013-2015 BitPay, Inc. Bitcore is a trademark maintained by BitPay, Inc.