JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 47963
  • Score
    100M100P100Q166590F
  • License MIT

Validate any Bitcoin address - Bech32, P2SH and P2PKH

Package Exports

  • bitcoin-address-validation

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (bitcoin-address-validation) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

bitcoin-address-validation

Build Status npm version

Validate Bitcoin addresses - Bech32, P2PKH and P2SH! Available for ES6 and Node.js.

validate('bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4');

{
  bech32: true,
  testnet: false,
  address: 'bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4',
  type: 'p2wpkh'
}

Installation

Add bitcoin-address-validation to your Javascript project dependencies using Yarn:

yarn add bitcoin-address-validation

Or NPM:

npm install bitcoin-address-validation --save

Usage

Importing

Import using ES6:

import validate from 'bitcoin-address-validation';

Or AMD:

var validate = require('bitcoin-address-validation');

Validating addresses

Validation is done using the validate(address) function.

validate('17VZNX1SN5NtKa8UQFxwQbFeFc3iqRYhem')

{
  address: '17VZNX1SN5NtKa8UQFxwQbFeFc3iqRYhem',
  type: 'p2pkh',
  testnet: false
}

Bech32 Example

validate('bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4');

{
  bech32: true,
  testnet: false,
  address: 'bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4',
  type: 'p2wpkh'
}

Invalid addresses

validate(address) will return false for any invalid address, regardless of the address type:

validate('bc1qw508d6qejxtdg4y5r3zrrvary0c5xw7kv8f3t4')

false

Author

Rui Gomes
https://ruigomes.me

License

The MIT License (MIT). Please see LICENSE file for more information.