Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

abstract-bitcoin-wallet

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

abstract-bitcoin-wallet

Interface and test suite for standardized bitcoin wallet libraries

  • 0.5.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

abstract-bitcoin-wallet

Build Status

Interface and test suite for standardized bitcoin wallet libraries. For creating your own compatible implementation, see Tests.

Implementations

mock-bitcoin-wallet

This package exposes a mockWallet method that implements the abstract-bitcoin-wallet interface and can be used to for mocking in tests.

es6

import { mockWallet } from 'abstract-bitcoin-wallet';
const wallet = mockWallet();

JavaScript

var wallet = require('abstract-bitcoin-wallet').mockWallet();

Interface

All methods must return promises.

.summary()

Get wallet balance summary.

Example response:

{
  balance:0,
  confirmedBalance:0,
}

.send({ address, amount })

Send coins to an address.

address address to send amount to amount amount to send in satoshis

Example response:

{
  hash: 'txhash of the transaction',
}

.createAddress({ label })

label (optional) label to assign address

Example response:

{
  address: 'some bitcoin address',
}

.address({ address })

Get information about address including balance

address address to query

.transaction({ hash })

Get information about transaction

hash hash of the transaction

Example response:

{ hash: '817845049ff457f6c52080ccb90705a8fbf64e7d683b841cdcb9607db207b929',
  fee: 1661,
  inputs:
   [ { previousHash: '06c56b92d608b309aa3f930d74a57e50b2d58994dffa90f8393755b82ae41508',
       previousOutputIndex: 0 } ],
  outputs:
   [ { vout: 0,
       account: '2NGKTqNQyct4wctAyo8Wwy4zoFWkWXseaRo',
       value: 74099,
       isMine: true,
       chain: 1,
       chainIndex: 70 },
     { vout: 1,
       account: '2MzaStGqVB4Qk4KJG8aA9Q2CLWHqBEr1euw',
       value: 10000,
       isMine: true,
       chain: 0,
       chainIndex: 1454 } ],
  entries: [ { account: '2N4VLa3xQn4ucSQ475gME26v1UUE6hgrFDr', value: -1661 } ],
  hex: '01000000010815e42ab8553739f890fadf9489d5b2507ea5740d933faa09b308d6926bc50600000000fdfd0000483045022100a473c9787d6bd87447fabb9067dc98d92e3d97c15ae9fb844d7dbdf4d4959b1c02205858f9a0aa7b7aa57295f5046c675f257106989194a086ffe67bd7a7e1b82d0d01473044022059210113a797174a4c5a4e465cd5855f68c990a8f2a446f8808b08d2827ac3fe02205695b023b33e3b85e81e80053b2481b09c4893978bb5f87e3392bcab4e887334014c695221028b2a45adfca1ddf2bbf2a3cb26749e11268877396867b95a41cc445aec52d6cf2103deb2c468cc3ef4e0bd444747ef842a7f2b735f837ca58947738f8fc438f9fc3c21027f071a58ac9987f2cf2b705638eeacd2196d226b6e126a5f42f341c2d100ef4c53aeffffffff02732101000000000017a914fd181d7d451b1762f63c8bdbc1fdceb69ff3ff6e87102700000000000017a914506b8c92c0ede36ccbd0cbd466e18e5d1ee86fc88700000000' }

Tests

To test your own implementation of the abstract-bitcoin-wallet interface, adapt the following code:

es6:

import walletTests from 'abstract-bitcoin-wallet';
import yourCustomWallet from './';

const wallet = yourCustomWallet({
  someconfig: 'somevalue',
});

walletTests(wallet);

JavaScript:

var walletTests = require('abstract-bitcoin-wallet');
var yourCustomWallet = require('./');
var wallet = yourCustomWallet({ someconfig: 'somevalue' });

walletTests(wallet);

For verbose output, set DEBUG to abw, e.g: DEBUG=abw npm test.

Keywords

FAQs

Package last updated on 04 Nov 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc