ebj

easy-bitcoin-js

A simple module with basic Bitcoin operations using bitcoinjs-lib and Blockchain.info API.

Showing:

Popularity

Downloads/wk

0

GitHub Stars

5

Maintenance

Last Commit

6yrs ago

Contributors

1

Package

Dependencies

3

License

AGPL-3.0-or-later

Type Definitions

Tree-Shakeable

No?

Categories

Readme

easy-bitcoin-js

A simple module with basic Bitcoin operations using bitcoinjs-lib and Blockchain.info API.

Build Status

npm package

Super simple to use

var easyBtc = require('easy-bitcoin-js');

Development status

Some features are in alpha. This means some operations, even if they are complete, are under development and were not tested. Tested features are documented with Done and tested icon.

There is a milestone of pending tasks until we release it as a stable v1.

Features

newWallet() Done and tested

Creates a random new wallet.

Returns
  • [Object] $$ecPair: bitcoinjs keyPair object
  • [String] wif: private key in WIF format
  • [String] address: public key (address)

getWallet(address) Done and tested

Gets information from an address in the blockchain.

Arguments
  • [String] address: the address of the wallet.
Returns
  • [Promise] A Q promise with the HTTP result. JSON result is resolved to resolved.data.

Tip: the returned final_balance property of the transaction JSON contains the wallet's balance.

newTransaction(fromWIF, txHashOrigin, toAddress, value)

Creates a transaction.

Arguments
  • [String] fromWIF: private key in WIF format of the origin wallet.
  • [String] txHashOrigin: the last transaction hash to the origin wallet.
  • [String] toAddress: the public key (address) of the destination wallet.
  • [Number, int] value: the amount to transfer in uBTC (microbitcoins).
Returns
  • [Object] $$tx: bitcoinjs transaction object.
  • [String] hex: the transaction hex script to push into the blockchain.

pushTransaction(hexTx)

Pushes a transaction to the blockchain.

Arguments
  • [String] hexTx: the transaction hex script to push into the blockchain.
Returns
  • [Promise] A Q promise with the HTTP result.

getTransaction(txHash)

Gets a transaction from the blockchain.

Arguments
  • [String] hexTx: the transaction hex script to push into the blockchain.
Returns
  • [Promise] A Q promise with the HTTP result. JSON result is resolved to resolved.data.

Tip: the returned block_height property of the transaction JSON is present and greater than zero if the transaction is already confirmed. If this property is not present in the JSON or equal to or less than zero, the transaction was not already confirmed.

Under development

THE FOLLOWING OPERATIONS ARE UNDER DEVELOPMENT. This means they are incomplete, not working or unstable.

decodeTransaction(hex)

Decodes a transaction from its hex script.

Status: need to parse Blockchain.info HTML reponse and extract transaction JSON from a <pre> tag.

createPushAndConfirmTransaction(fromWIF, txHashOrigin, toAddress, value, opt_timeout, opt_interval)

Creates, pushes and awaits for a transaction confirmation.

Status: Done, just waiting for the decodeTransaction method to be completed.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial