simplebtc
TypeScript icon, indicating that this package has built-in type declarations

6.1.0 • Public • Published

simplebtc

High-level Bitcoin library and command line tool; originally created for Token, currently used by Cyph.

For complete API documentation, read the type declaration file.

Import

	import {Wallet} from 'simplebtc';

Constructor

	const wallet = new Wallet(/* {
		address: '1E4G7mwKozrTSUijjB2eFqgbU9zxToZbkz',
		key: 'L4udA8nLC1r2xCVuzretgKuAZkvQq2aCZWKgiGXrxWEcH956xeE2',
		localCurrency: 'USD'
	} */);

If a WIF key is specified, it will be used to derive the private key and address, and money may be sent from the wallet.

Otherwise, an address may be specified, in which case no private key will be generated and the wallet will be read-only.

If neither a WIF nor an address is specified, a new wallet with a new private key and address will be generated. This will not be read-only, but it will start off with a balance of 0 BTC.

Address

	wallet.address	// 1E4G7mwKozrTSUijjB2eFqgbU9zxToZbkz

Command line:

	$ simplebtc address

Balance

	const balance = await wallet.getBalance();

	// balance == {btc: 0.0482, local: 30}

Command line:

	$ simplebtc balance

Transactions

	const transactions = await wallet.getTransactionHistory();

	/* transactions == [{
		amount: 76.92,
		id: 'cf046a7e3303a7b44f86e4bb92367b4ae223e2c76dd0b45346de879acd482905',
		isConfirmed: true,
		recipients: ['1L8wTTMxSUw2vYmQb4xr9r4M1g8n2YFcgX'],
		senders: ['1E4G7mwKozrTSUijjB2eFqgbU9zxToZbkz'],
		timestamp: 1407970572000,
		wasSentByMe: true
	}, ...] */

Command line:

	$ simplebtc history

Handle Receiving Money

	wallet.watchNewTransactions().subscribe(transaction => {
		console.log(transaction);
	});

	/* transaction == {
		amount: 76.92,
		id: 'cf046a7e3303a7b44f86e4bb92367b4ae223e2c76dd0b45346de879acd482905',
		isConfirmed: true,
		recipients: ['1L8wTTMxSUw2vYmQb4xr9r4M1g8n2YFcgX'],
		senders: ['1E4G7mwKozrTSUijjB2eFqgbU9zxToZbkz'],
		timestamp: 1407970572000,
		wasSentByMe: true
	} */

Command line:

	$ simplebtc stream

Send Money

	await wallet.send('1BTCorgHwCg6u2YSAWKgS17qUad6kHmtQW', 30);

	// $30 sent to Bitcoin Foundation

Command line:

	$ simplebtc send [recipient address] [amount in local currency]

If available, this method will deduct the transaction fee in addition to the specified amount; otherwise, the fee will be subtracted from the amount being sent.

Similar to Bitcoin Core, unspent transaction outputs which originated locally will be treated as confirmed.

Export Wallet to WIF

	wallet.key.toWIF()	// L4udA8nLC1r2xCVuzretgKuAZkvQq2aCZWKgiGXrxWEcH956xeE2

Install

	$ npm install simplebtc

Package Sidebar

Install

npm i simplebtc

Weekly Downloads

0

Version

6.1.0

License

BSD-2-Clause

Unpacked Size

1.68 MB

Total Files

12

Last publish

Collaborators

  • buu700