Skip to content

coderofstuff/app-kaspa

Repository files navigation

Kaspa Ledger Integration

This is the code for the Kaspa embedded app.

Prerequisite

With the docker image builder

The app-builder docker image from this repository contains all needed tools and library to build and load an application. You can download it from the ghcr.io docker repository:

docker pull ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-full

You can then enter this development environment by executing the following command from the directory of the application git repository:

cd app-kaspa
docker run --rm -it -v "$(realpath .):/app" ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-full

The application's code will be available from inside the docker container, you can proceed to the following compilation steps to build your app.

Compilation and load

make DEBUG=1  # compile optionally with PRINTF
make load     # load the app on the Nano using ledgerblue

Documentation

High level documentation such as APDU, commands and transaction serialization are included in developer documentation which can be generated with doxygen

doxygen .doxygen/Doxyfile

the process outputs HTML and LaTeX documentations in doc/html and doc/latex folders.

Tests & Continuous Integration

The flow processed in GitHub Actions is the following:

It outputs 3 artifacts:

  • speculos-log within APDU command/response when executing end-to-end tests
  • code-coverage within HTML details of code coverage
  • documentation within HTML auto-generated documentation