ledger_algorand 1.0.0-pre.1 copy "ledger_algorand: ^1.0.0-pre.1" to clipboard
ledger_algorand: ^1.0.0-pre.1 copied to clipboard

PlatformAndroid

A Ledger App Plugin for the Algorand blockchain


ledger-algorand

A Flutter Ledger App Plugin for the Algorand blockchain
« Explore the docs »

Report Bug · Request Feature · Ledger Flutter



Overview #

Ledger Nano devices are the perfect hardware wallets for managing your crypto & NFTs on the go. This Flutter package is a plugin for the ledger_flutter package to get accounts and sign transactions using the Algorand blockchain.

Web3 Ecosystem Integrations #

We are expanding the Flutter ecosystem to grow the Web3 community. Check out our other Web3 packages below:

Getting started #

Installation #

Install the latest version of this package via pub-web.flutter-io.cn:

ledger_algorand: ^latest-version

For integration with the Ledger Flutter package, check out the documentation here.

Setup #

Create a new instance of an AlgorandLedgerApp and pass an instance of your Ledger object.

final app = AlgorandLedgerApp(ledger);

Usage #

Get public keys #

Depending on the required blockchain and Ledger Application Plugin, the getAccounts() method can be used to fetch the public keys from the Ledger Nano device.

Based on the implementation and supported protocol, there might be only one public key in the list of accounts.

final accounts = await app.getAccounts(device);

Signing transactions #

You can easily sign transactions using the supplied LedgerApp.

Here is an example using the algorand_dart SDK:

final signature = await app.signTransaction(
    device,
    transaction.toBytes(),
);

final signedTx = SignedTransaction(
  transaction: event.transaction,
  signature: signature,
);

final txId = await algorand.sendTransaction(
    signedTx,
    waitForConfirmation: true,
);

Sponsors #

Our top sponsors are shown below!

Defly

Blockshake

Contributing #

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag enhancement.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/my-feature)
  3. Commit your Changes (git commit -m 'feat: my new feature)
  4. Push to the Branch (git push origin feature/my-feature)
  5. Open a Pull Request

Please read our Contributing guidelines and try to follow Conventional Commits.

License #

The ledger_algorand SDK is released under the MIT License (MIT). See LICENSE for details.