bitcoin_flutter 1.0.3

  • README.md
  • CHANGELOG.md
  • Example
  • Installing
  • Versions
  • 76

<a href="https://pub.dartlang.org/packages/bitcoin_flutter"><img alt="pub version" src="https://img.shields.io/pub/v/bitcoin_flutter.svg?style=flat-square"></a>

bitcoin_flutter

A dart Bitcoin library for Flutter.

Released under the terms of the MIT LICENSE.

Inspired by bitcoinjs

Otherwise, pull requests are appreciated.

Installing

Flutter Packages

Examples

import 'package:bitcoin_flutter/bitcoin_flutter.dart';
import 'package:bip39/bip39.dart' as bip39;

main() {
  var seed = bip39.mnemonicToSeed("praise you muffin lion enable neck grocery crumble super myself license ghost");
  var hdWallet = new HDWallet(seed);
  print(hdWallet.address);
  // => 12eUJoaWBENQ3tNZE52ZQaHqr3v4tTX4os
  print(hdWallet.pubKey);
  // => 0360729fb3c4733e43bf91e5208b0d240f8d8de239cff3f2ebd616b94faa0007f4
  print(hdWallet.privKey);
  // => 01304181d699cd89db7de6337d597adf5f78dc1f0784c400e41a3bd829a5a226
  print(hdWallet.wif);
  // => KwG2BU1ERd3ndbFUrdpR7ymLZbsd7xZpPKxsgJzUf76A4q9CkBpY
  
  var wallet = Wallet.fromWIF("Kxr9tQED9H44gCmp6HAdmemAzU3n84H3dGkuWTKvE23JgHMW8gct");
  print(wallet.address);
  // => 19AAjaTUbRjQCMuVczepkoPswiZRhjtg31
  print(wallet.pubKey);
  // => 03aea0dfd576151cb399347aa6732f8fdf027b9ea3ea2e65fb754803f776e0a509
  print(wallet.privKey);
  // => 3095cb26affefcaaa835ff968d60437c7c764da40cdd1a1b497406c7902a8ac9
  print(wallet.wif);
  // => Kxr9tQED9H44gCmp6HAdmemAzU3n84H3dGkuWTKvE23JgHMW8gct
}

The below examples are implemented as integration tests:

Running the test suite

dart run test

Complementing Libraries

LICENSE MIT

0.1.1

  • HDWallet from Seed implementation
  • Wallet from WIF implementation

1.0.0

  • Transaction implementation

1.0.1

  • Add derive and derive path for HD Wallet

1.0.2

  • Add sign and verify for HD Wallet and Wallet

1.0.3

  • Fix bug testnet BIP32

example/bitcoin_flutter_example.dart

import 'package:bitcoin_flutter/bitcoin_flutter.dart';
import 'package:bip39/bip39.dart' as bip39;

main() {
  var seed = bip39.mnemonicToSeed(
      "praise you muffin lion enable neck grocery crumble super myself license ghost");
  var hdWallet = new HDWallet.fromSeed(seed);
  print(hdWallet.address);
  // => 12eUJoaWBENQ3tNZE52ZQaHqr3v4tTX4os
  print(hdWallet.pubKey);
  // => 0360729fb3c4733e43bf91e5208b0d240f8d8de239cff3f2ebd616b94faa0007f4
  print(hdWallet.privKey);
  // => 01304181d699cd89db7de6337d597adf5f78dc1f0784c400e41a3bd829a5a226
  print(hdWallet.wif);
  // => KwG2BU1ERd3ndbFUrdpR7ymLZbsd7xZpPKxsgJzUf76A4q9CkBpY

  var wallet =
      Wallet.fromWIF("Kxr9tQED9H44gCmp6HAdmemAzU3n84H3dGkuWTKvE23JgHMW8gct");
  print(wallet.address);
  // => 19AAjaTUbRjQCMuVczepkoPswiZRhjtg31
  print(wallet.pubKey);
  // => 03aea0dfd576151cb399347aa6732f8fdf027b9ea3ea2e65fb754803f776e0a509
  print(wallet.privKey);
  // => 3095cb26affefcaaa835ff968d60437c7c764da40cdd1a1b497406c7902a8ac9
  print(wallet.wif);
  // => Kxr9tQED9H44gCmp6HAdmemAzU3n84H3dGkuWTKvE23JgHMW8gct
}

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  bitcoin_flutter: ^1.0.3

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter packages get

Alternatively, your editor might support pub get or flutter packages get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:bitcoin_flutter/bitcoin_flutter.dart';
  
Version Uploaded Documentation Archive
1.0.3 Nov 23, 2018 Go to the documentation of bitcoin_flutter 1.0.3 Download bitcoin_flutter 1.0.3 archive
1.0.2 Nov 23, 2018 Go to the documentation of bitcoin_flutter 1.0.2 Download bitcoin_flutter 1.0.2 archive
1.0.1 Nov 21, 2018 Go to the documentation of bitcoin_flutter 1.0.1 Download bitcoin_flutter 1.0.1 archive
1.0.0 Oct 19, 2018 Go to the documentation of bitcoin_flutter 1.0.0 Download bitcoin_flutter 1.0.0 archive
0.1.1 Oct 15, 2018 Go to the documentation of bitcoin_flutter 0.1.1 Download bitcoin_flutter 0.1.1 archive
0.1.0 Oct 15, 2018 Go to the documentation of bitcoin_flutter 0.1.0 Download bitcoin_flutter 0.1.0 archive
0.0.5 Oct 15, 2018 Go to the documentation of bitcoin_flutter 0.0.5 Download bitcoin_flutter 0.0.5 archive
0.0.4 Oct 15, 2018 Go to the documentation of bitcoin_flutter 0.0.4 Download bitcoin_flutter 0.0.4 archive
0.0.3 Oct 12, 2018 Go to the documentation of bitcoin_flutter 0.0.3 Download bitcoin_flutter 0.0.3 archive
0.0.2 Oct 12, 2018 Go to the documentation of bitcoin_flutter 0.0.2 Download bitcoin_flutter 0.0.2 archive

All 11 versions...

Popularity:
Describes how popular the package is relative to other packages. [more]
58
Health:
Code health derived from static analysis. [more]
90
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
100
Overall:
Weighted score of the above. [more]
76
Learn more about scoring.

We analyzed this package on Dec 5, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.1.0
  • pana: 0.12.7

Platforms

Detected platforms: Flutter, web, other

No platform restriction found in primary library package:bitcoin_flutter/bitcoin_flutter.dart.

Health issues and suggestions

Document public APIs (-9.57 points)

44 out of 46 API elements (library, class, field or method) have no adequate dartdoc content. Good documentation improves code readability and discoverability through search.

Fix lib/src/bitcoin_flutter_base.dart. (-0.50 points)

Analysis of lib/src/bitcoin_flutter_base.dart reported 1 hint:

line 10 col 8: Unused import: 'dart:convert'.

Format lib/src/utils/check_types.dart.

Run dartfmt to format lib/src/utils/check_types.dart.

Format lib/src/utils/constants/op.dart.

Run dartfmt to format lib/src/utils/constants/op.dart.

Fix additional 4 files with analysis or formatting issues.

Additional issues in the following files:

  • lib/src/utils/magic_hash.dart (Run dartfmt to format lib/src/utils/magic_hash.dart.)
  • lib/src/utils/push_data.dart (Run dartfmt to format lib/src/utils/push_data.dart.)
  • lib/src/utils/script.dart (Run dartfmt to format lib/src/utils/script.dart.)
  • lib/src/utils/varuint.dart (Run dartfmt to format lib/src/utils/varuint.dart.)

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0-dev.58.0 <3.0.0
bip32 ^1.0.5 1.0.5
bip39 ^1.0.3 1.0.3
bs58check ^1.0.1 1.0.1
hex ^0.1.2 0.1.2
meta ^1.1.5 1.1.6
pointycastle ^1.0.0-rc2 1.0.0-rc4
Transitive dependencies
charcode 1.1.2
collection 1.14.11
convert 2.0.2
crypto 2.0.6
typed_data 1.1.6
Dev dependencies
test ^1.0.0