2014-01-22 14:12:45 -08:00
Bitcore
2013-07-04 13:02:18 -07:00
=======
2013-07-04 12:55:19 -07:00
2014-04-08 12:10:52 -07:00
[![Build Status ](https://travis-ci.org/bitpay/bitcore.svg?branch=master )](https://travis-ci.org/bitpay/bitcore)
2014-06-05 12:44:32 -07:00
[![Coverage Status ](https://img.shields.io/coveralls/bitpay/bitcore.svg )](https://coveralls.io/r/bitpay/bitcore)
2014-04-08 12:10:52 -07:00
2014-11-22 13:41:12 -08:00
A pure and simple javascript bitcoin API.
2014-01-05 16:01:06 -08:00
2014-11-22 13:41:12 -08:00
## Principles
2014-04-17 05:53:14 -07:00
2014-02-03 12:54:26 -08:00
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.
2014-01-05 16:01:06 -08:00
2014-11-22 13:41:12 -08:00
## Get Started
2014-01-05 16:01:06 -08:00
2014-11-22 13:41:12 -08:00
You can run bitcore on any javascript engine. It's distributed through npm, and you can also find compiled single files here: [bitcore.js ](http://missing-link ) and [bitcore.min.js ](http://missing-link ).
2014-04-17 05:53:14 -07:00
2014-01-22 14:12:45 -08:00
```
npm install bitcore
```
2014-01-05 16:01:06 -08:00
2014-11-22 13:41:12 -08:00
Using it on node.js:
2014-04-17 05:53:14 -07:00
2014-09-04 08:44:01 -07:00
```javascript
2014-03-13 10:46:21 -07:00
var bitcore = require('bitcore');
2014-01-23 07:26:27 -08:00
2014-11-22 13:41:12 -08:00
assert(bitcore.isValid(address));
var simpleTx = new bitcore.Transaction();
var simpleTx.from(unspent).to(address, amount);
simpleTx.sign(privateKey);
2014-07-07 16:26:41 -07:00
```
2014-11-22 13:41:12 -08:00
## Documentation
2014-02-17 23:49:35 -08:00
2014-11-22 13:41:12 -08:00
The complete docs are hosted here: [bitcore documentation ](http://missing-link ). There's also a [bitcore API reference ](http://missing-link ) available generated from the JSDocs of the project.
2014-02-17 23:49:35 -08:00
2014-11-22 13:41:12 -08:00
## Security
2014-04-17 05:53:14 -07:00
2014-01-23 08:17:43 -08:00
Please use at your own risk.
2014-01-22 14:12:45 -08:00
2014-01-23 08:17:43 -08:00
Bitcore is still under heavy development and not quite ready for "drop-in" production use. If you find a security issue, please email security@bitcore.io.
2014-01-22 14:12:45 -08:00
2014-11-22 13:41:12 -08:00
## Contributing
2014-04-17 05:53:14 -07:00
2014-11-22 13:41:12 -08:00
Please send pull requests for bug fixes, code optimization, and ideas for improvement.
2014-04-17 05:53:14 -07:00
2014-03-11 14:16:44 -07:00
## Building the browser bundle
2014-04-17 05:53:14 -07:00
2014-11-22 13:41:12 -08:00
To build bitcore full bundle for the browser:
2014-03-11 14:16:44 -07:00
2014-11-22 13:41:12 -08:00
```sh
gulp browser
2014-03-11 14:16:44 -07:00
```
2014-11-22 13:41:12 -08:00
This will generate files named `dist/bitcore.js` and `dist/bitcore.min.js` .
2014-06-20 19:38:56 -07:00
2014-11-22 13:41:12 -08:00
## Tests
2014-06-20 19:38:56 -07:00
2014-11-22 13:41:12 -08:00
Run all the tests:
2014-03-11 14:16:44 -07:00
2014-11-22 13:41:12 -08:00
```sh
gulp test
2014-03-11 14:16:44 -07:00
```
2014-03-19 06:43:14 -07:00
2014-11-22 13:41:12 -08:00
Run the tests with mocha:
2014-03-19 06:43:14 -07:00
2014-11-22 13:41:12 -08:00
```sh
gulp test:node
2014-03-19 06:43:14 -07:00
```
2014-11-22 13:41:12 -08:00
Run the tests with karma (uses firefox and chrome):
2014-03-19 06:43:14 -07:00
2014-11-22 13:41:12 -08:00
```sh
gulp test:browser
2014-03-19 06:43:14 -07:00
```
2014-11-22 13:41:12 -08:00
Create a coverage report (you can open `coverage/lcov-report/index.html` to visualize it):
2014-03-19 06:43:14 -07:00
2014-11-22 13:41:12 -08:00
```sh
gulp coverage
2014-03-19 06:43:14 -07:00
```
2014-11-22 13:41:12 -08:00
## License
2014-02-07 18:08:56 -08:00
2014-11-22 13:41:12 -08:00
Code released under [the MIT license ](https://github.com/bitpay/bitcore/blob/master/LICENSE ).
2014-02-07 18:08:56 -08:00
Copyright 2013-2014 BitPay, Inc. Bitcore is a trademark maintained by BitPay, Inc.