-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
83 changed files
with
1,425 additions
and
1,285 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
# Git Workflow | ||
|
||
This project is a monorepo that uses lerna to link dependencies. | ||
|
||
https://github.com/lerna/lerna | ||
|
@@ -8,7 +9,8 @@ This mono repo should contain the commits from all of the packages. | |
Each package has it's own repo. | ||
|
||
## Packages | ||
Each package is in the packages directory. | ||
|
||
Each package is in the packages directory. | ||
|
||
Code changes that touch multiple modules should be done on the bitcore repo. | ||
This way one branch can update multiple modules. | ||
|
@@ -17,36 +19,40 @@ Lengthy developments on a single package should be done on that package's repo. | |
Once the package is at a good point, it should be merged into the monorepo | ||
|
||
## Updating Packages From Their Own Repo | ||
|
||
The monorepo packages can be updated via git subtrees, then submitted to the bitcore repo as a MR | ||
|
||
Example: | ||
``` | ||
|
||
```sh | ||
git co -b feature/bitcore-node-update | ||
git subtree pull --prefix=packages/bitcore-node [email protected]:bitpay/bitcore-node.git branchToPull | ||
git push -u origin feature/bitcore-node-update | ||
# Create MR from origin:feature/bitcore-node-update to upstream:bitcore | ||
``` | ||
|
||
|
||
## Updating Repos from Bitcore Package | ||
|
||
Changes to the mono repo can be pushed to the package repo. | ||
``` | ||
|
||
```sh | ||
git subtree push --prefix=packages/bitcore-node [email protected]:micahriggan/bitcore-node.git branchToPush | ||
``` | ||
|
||
## Adding New Packages from Existing Repos | ||
|
||
Packages can be added via Lerna or via git subtrees. | ||
|
||
``` | ||
```sh | ||
lerna import ~/somedir/path-to-bitcore-repo --flatten | ||
# OR | ||
git subtree add --prefix=packages/bitcore-repo-to-add [email protected]:bitpay/bitcore-repo-to-add.git branchToAdd | ||
``` | ||
|
||
This will merge all of the commits into the bitcore history | ||
|
||
## Dev Dependencies | ||
|
||
# Dev Dependencies | ||
Dev dependencies that are used on multiple packages can be hoisted to the top-level | ||
|
||
Linters, formatters, and other standards can be defined top-level for the monorepo | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,26 +1,31 @@ | ||
Bitcore Node | ||
============ | ||
_Requirements_: | ||
# Bitcore | ||
|
||
**Infrastructure to build Bitcoin and blockchain-based applications for the next generation of financial technology.** | ||
|
||
## Getting Started | ||
|
||
### Requirements | ||
|
||
- Trusted P2P Peer | ||
- MongoDB Server >= v3.4 | ||
|
||
Checkout the repo | ||
### Checkout the repo | ||
|
||
``` | ||
```sh | ||
git clone [email protected]:bitpay/bitcore.git | ||
git checkout master | ||
npm install | ||
``` | ||
|
||
## Setup Guide | ||
|
||
**1. Setup Bitcore config** | ||
### 1. Setup Bitcore config | ||
|
||
<details> | ||
<summary>Example bitcore.config.json</summary> | ||
<br> | ||
|
||
``` | ||
```json | ||
{ | ||
"bitcoreNode": { | ||
"chains": { | ||
|
@@ -95,15 +100,13 @@ npm install | |
``` | ||
|
||
</details> | ||
<br> | ||
|
||
**2. Setup Bitcoin Node** | ||
### 2. Setup Bitcoin Node | ||
|
||
<details> | ||
<summary>Example Bitcoin Mainnet Config</summary> | ||
<br> | ||
|
||
``` | ||
```sh | ||
whitelist=127.0.0.1 | ||
txindex=0 | ||
listen=1 | ||
|
@@ -124,44 +127,59 @@ rpcallowip=127.0.0.1 | |
rpcuser=username | ||
rpcpassword=password | ||
``` | ||
|
||
</details> | ||
<br> | ||
|
||
**3. Run Bitcoin node** | ||
### 3. Run Bitcoin node | ||
|
||
<details> | ||
<summary>Example Starting a Bitcoin Node</summary> | ||
<br> | ||
|
||
``` | ||
|
||
```sh | ||
# Path to your bitcoin application and path to the config above | ||
/Applications/Bitcoin-Qt.app/Contents/MacOS/Bitcoin-Qt -datadir=/Users/username/blockchains/bitcoin-core/networks/mainnet/ | ||
``` | ||
|
||
</details> | ||
<br> | ||
|
||
**4. Start Bitcore** | ||
### 4. Start Bitcore | ||
|
||
``` | ||
This comment has been minimized.
Sorry, something went wrong. |
||
```sh | ||
npm run node | ||
``` | ||
|
||
## API Documentation | ||
## Applications | ||
|
||
- [Bitcore Node](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-node) - A full node with extended capabilities using Bitcoin Core | ||
- [Bitcore Wallet](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-wallet) - A command-line based wallet client | ||
- [Bitcore Wallet Client](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-wallet-client) - A client for the wallet service | ||
- [Bitcore Wallet Service](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-wallet-service) - A multisig HD service for wallets | ||
- [Bitpay Wallet](https://github.com/bitpay/copay) - An easy-to-use, multiplatform, multisignature, secure bitcoin wallet | ||
- [Insight](https://github.com/bitpay/bitcore/tree/master/packages/insight-previous) - A blockchain explorer web user interface | ||
|
||
[REST API parameters and example responses](./packages/bitcore-node/docs/api-documentation.md) | ||
## Libraries | ||
|
||
[Websockets API namespaces, event names, and parameters](./packages/bitcore-node/docs/sockets-api.md) | ||
- [Bitcore Channel](https://github.com/bitpay/bitcore-channel) - Micropayment channels for rapidly adjusting bitcoin transactions | ||
- [Bitcore ECIES](https://github.com/bitpay/bitcore-ecies) - Uses ECIES symmetric key negotiation from public keys to encrypt arbitrarily long data streams | ||
- [Bitcore Lib](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-lib) - A pure and powerful JavaScript Bitcoin library | ||
- [Bitcore Lib Cash](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-lib-cash) - A pure and powerful JavaScript Bitcoin Cash library | ||
- [Bitcore Message](https://github.com/bitpay/bitcore-message) - Bitcoin message verification and signing | ||
- [Bitcore Mnemonic](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-mnemonic) - Implements mnemonic code for generating deterministic keys | ||
- [Bitcore P2P](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-p2p) - The peer-to-peer networking protocol for BTC | ||
- [Bitcore P2P Cash](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-p2p-cash) - The peer-to-peer networking protocol for BCH | ||
- [Crypto Wallet Core](https://github.com/bitpay/bitcore/tree/master/packages/crypto-wallet-core) - A coin-agnostic wallet library for creating transactions, signing, and address derivation | ||
|
||
[Testing Bitcore-node in RegTest](./packages/bitcore-node/docs/wallet-guide.md) | ||
## Extras | ||
|
||
[Wallet Guide - Creating, Signing, Import Address](./packages/bitcore-client/README.md) | ||
- [Bitcore Build](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-build) - A helper to add tasks to gulp | ||
- [Bitcore Client](https://github.com/bitpay/bitcore/tree/master/packages/bitcore-client) - A helper to create a wallet using the bitcore-v8 infrastructure | ||
|
||
## Contributing | ||
|
||
See [CONTRIBUTING.md](https://github.com/bitpay/bitcore) on the main bitcore repo for information about how to contribute. | ||
See [CONTRIBUTING.md](https://github.com/bitpay/bitcore/blob/master/Contributing.md) on the main bitcore repo for information about how to contribute. | ||
|
||
## License | ||
|
||
Code released under [the MIT license](https://github.com/bitpay/bitcore/blob/master/LICENSE). | ||
|
||
Copyright 2015-2019 BitPay, Inc. Bitcore is a trademark maintained by BitPay, Inc. | ||
Copyright 2013-2019 BitPay, Inc. Bitcore is a trademark maintained by BitPay, Inc. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
$$