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

1.0.8 • Public • Published

btc-signer

Easy to use Blockbook Provider and Signer object for Bitcoin-like Coins

Features

  • Ethers.js like Provider & Signer object for Bitcoin-fork coins (Bitcoin, Litecoin, Dogecoin, etc.)

  • Provider library for Blockbook & Mempool (electrs) API

  • Can compose necessary signed & unsigned PSBT Transaction Object from BIP39 Mnemonic Seed / Private Key (WIF) / View only (Public Key)

  • Does not require deep understanding of how to compose bitcoin transactions from scratch (the reason why this library exists).

  • Taproot Support (HD Taproot Signer still WIP)

Supported APIs

  • [x] Blockbook (Recommended as it supports xpub addresses and have various coin support like Dogecoin and ZCash)

  • [x] Mempool (Electrs) Instances (mempool.space, litecoinspace, blockstream.info)

  • [] Blockchair (Maybe at the future)

Quick Start

// bitcoin reexports bitcoinjs lib
import { bitcoin, MnemonicWallet, CoinProvider } from 'btc-signer';

const provider = new CoinProvider({
    backend: 'https://mempool.space/testnet4'
});

const wallet = new MnemonicWallet(provider, {
    mnemonic: 'test test test test test test test test test test test junk',
    network: {
        ...bitcoin.networks.testnet,
        versions: {
            bip44: 1
        }
    }
});

// tb1pfewlxm8meyyvgjydfu7v8j4ej64symj6ut8sf66h9germp94qgzsgnnjhk
console.log(wallet.address);
// p2tr:cSBTc78h1Ab9MNcQcFD8w3kNTW8xWM4EjTQgKLDq9gUG9GrRZD3f
console.log(wallet.privateKeyWithPrefix);
// 028c7fc6552af4384a13791e63bac79ff2bcfeedf143a88d6dc4b6080a8829cdc1
console.log(wallet.publicKey);

// output is txid
console.log(await wallet.sendTransaction([
    {
        address: 'tb1pfewlxm8meyyvgjydfu7v8j4ej64symj6ut8sf66h9germp94qgzsgnnjhk',
        // 1 sat
        value: 1
    }
]));

Examples

  • Web Wallet - Open source browser side web wallet

  • CPUchain Pay - Open source server side Node.js Payment Gateway

Package Sidebar

Install

npm i btc-signer

Weekly Downloads

26

Version

1.0.8

License

MIT

Unpacked Size

4.74 MB

Total Files

45

Last publish

Collaborators

  • cpuchainorg