Go to file
Braydon Fuller e046f7294e Changes to be able to run with only a configuration file.
- Adds parameter to cli methods to be able to specify the location of services modules. This is useful for packages that wrap bitcore-node to be able to pass along a node_modules directory with services.
- Adds another parameter for including additional services in the default settings.
- Will use the `process.env.HOME + '/.bitcore` as the default configuration location.
- There are now two `getDefaultConfig`, one that will instatiate a `~/.bitcore` directory with a default if it doesn't exist, and `getBaseDefaultConfig` that will return a basic configuration without additional services enabled.
- Changes logic to use the global install if a local node_modules version is not available, this would previously assume that it was a local install because of the existence of a configuration file.
2015-10-20 12:33:53 -04:00
benchmarks bitcore -> bitcore-lib 2015-10-17 00:56:29 -04:00
bin Fix bug with double load of bitcore-lib. 2015-10-19 13:45:35 -04:00
cache Cache strategy changes 2015-08-05 16:29:54 -04:00
docs Expose cli methods. 2015-10-18 16:20:51 -04:00
etc Updated patch to support 0.11.1 2015-10-16 16:34:49 -04:00
example Improve test coverage and cleanup. 2015-08-31 16:32:25 -04:00
integration bitcore -> bitcore-lib 2015-10-17 00:56:29 -04:00
lib Changes to be able to run with only a configuration file. 2015-10-20 12:33:53 -04:00
src Added critical section lock in isSpent 2015-10-02 14:09:29 -04:00
test Changes to be able to run with only a configuration file. 2015-10-20 12:33:53 -04:00
.gitignore Address History: Include count in response results. 2015-09-15 13:17:15 -04:00
.jshintrc Cleanup configuration options 2015-07-21 11:16:12 -04:00
.travis.yml Tx event firing 2015-09-23 13:05:52 -04:00
LICENSE Update Documentation to reflect Service Architecture 2015-08-31 12:11:20 -04:00
PATCH_VERSION Updated patch to support 0.11.1 2015-10-16 16:34:49 -04:00
README.md Reference the bin included with standalone bitcore-node. 2015-10-18 17:54:14 -04:00
binding.gyp Statically linking libcrypto and libssl from bitcoin instead of using the System's version. 2015-10-16 14:17:00 -04:00
index.js Added a Node.js version check based on the package.json engine. 2015-10-18 22:50:29 -04:00
package.json Bump development version to v0.2.1-dev 2015-10-19 18:06:51 -04:00

README.md

Bitcore Node

A Bitcoin full node for building applications and services with Node.js. A node is extensible and can be configured to run additional services. At the minimum a node has native bindings to Bitcoin Core with the Bitcoin Service. Additional services can be enabled to make a node more useful such as exposing new APIs, adding new indexes for addresses with the Address Service, running a block explorer, wallet service, and other customizations.

Install

npm install -g bitcore-node
bitcore-node start

Note: For your convenience, we distribute binaries for x86_64 Linux and x86_64 Mac OS X. Upon npm install, the binaries for your platform will be downloaded. For more detailed installation instructions, or if you want to compile the project yourself, then please see the Build & Install documentation to build the project from source.

Prerequisites

  • Node.js v0.12
  • ~100GB of disk storage
  • ~4GB of RAM
  • Mac OS X >= 10.9, Ubuntu >= 12.04 (libc >= 2.15 and libstdc++ >= 6.0.16)

Configuration

Bitcore includes a Command Line Interface (CLI) for managing, configuring and interfacing with your Bitcore Node.

bitcore-node create -d <bitcoin-data-dir> mynode
cd mynode
bitcore-node add <service>
bitcore-node add https://github.com/yourname/helloworld

This will create a directory with configuration files for your node and install the necessary dependencies. For more information about (and developing) services, please see the Service Documentation.

To start bitcore-node as a daemon:

bitcore-node start --daemon

Add-on Services

There are several add-on services available to extend the functionality of Bitcore:

Documentation

  • Services
    • Bitcoind - Native bindings to Bitcoin Core
    • Database - The foundation API methods for getting information about blocks and transactions.
    • Address - Adds additional API methods for querying and subscribing to events with bitcoin addresses.
    • Web - Creates an express application over which services can expose their web/API content
  • Build & Install - How to build and install from source
  • Testing & Development - Developer guide for testing
  • Node - Details on the node constructor
  • Bus - Overview of the event bus constructor
  • Errors - Reference for error handling and types
  • Patch - Information about the patch applied to Bitcoin Core
  • Release Process - Information about verifying a release and the release process.

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.

License

Code released under the MIT license.

Copyright 2013-2015 BitPay, Inc.

  • bitcoin: Copyright (c) 2009-2015 Bitcoin Core Developers (MIT License)