For dApps & ServicesDevice AppIntegration walkthroughsHow-toApp Boilerplate

How to use the app boilerplate

This guide shows you how to fork and set up the Ledger app boilerplate to start building a Ledger signer app.

The boilerplate showcases the Ledger Device SDK and the surrounding development tooling: Docker containers, Speculos emulator, and the Ragger test framework. It includes examples for APDU handling, UI flows, cryptography, and build/test/CI integration.

Who this is for:

  • Developers beginning Ledger signer app development.
  • Developers who want a concise reference for build, test, and CI logic in a Ledger signer app.

Supported devices: Nano S+, Nano X, Stax, Flex, and Nano Gen5.

Quick start

Fork the app boilerplate (C)

Click here to fork the repository and start your project.

Set up the VSCode extension

Use Ledger’s VSCode developer tools to build, run on Speculos, run functional tests, and load on a device from the VSCode UI.

Continuous Integration (CI)

Two workflows are required for app submission: Build_and_functional_tests and Guidelines_enforcer.

⚠️
Setting up an efficient CI pipeline is crucial for your project’s success. The Guidelines enforcer and Build and run functional tests workflows are mandatory for submitting your device application for review.

Build_and_functional_tests

Build_and_functional_tests builds the app and runs functional tests using Ragger and Speculos.

Guidelines_enforcer

Guidelines_enforcer calls a reusable guidelines_enforcer workflow used for submission checks.

Troubleshooting

The Guidelines_enforcer workflow fails in CI. Review the workflow logs to identify the specific rule that failed. Common causes include missing or incorrectly formatted app metadata (in ledger_app.toml) and icon size issues. Refer to the development requirements page for the full list of checks.

Speculos does not launch on macOS. Make sure XQuartz is running and that you have enabled “Allow client connections” under XQuartz > Preferences > Security. Then restart the Docker container.

Next steps

After forking either boilerplate and reviewing the included CI workflows and guidelines, adapt the application to your project by:

When your app is ready, follow the submission process to submit it for review.

Ledger
Copyright © Ledger SAS. All rights reserved. Ledger, Ledger Stax, Ledger Flex, Ledger Nano, Ledger Nano S, Ledger OS, Ledger Wallet, [LEDGER] (logo), [L] (logo) are trademarks owned by Ledger SAS.