We provide a complete framework to develop Embedded Apps for our devices. This Framework contains:
- An App Boilerplate
- The Ledger Visual Studio Code extension
- CI workflows
- A test framework called Ragger, that uses Speculos
- An OS simulator called Speculos
This framework works on Linux, Mac and Windows and will speed up your Embedded Apps development process and submission process.
Your project port of entry: the App Boilerplate
An App Boilerplate to test our Framework and to kickstart your Embedded App project for Nano S Plus, Nano X and Ledger Stax. See how to build it and load it on a device in this section.
Click here to fork the repository and start your project.
Ledger Visual Studio Code Extension
The Ledger Visual Studio Extension leverages our Docker image, the app dev tool, so that it is always up to date with the latest standards and dependences. It contains the toolchain and the complete test framework (Speculos + Ragger).
It includes the following actions:
- Build the Embedded App for all devices
- Load an App on your device
- Execute functional tests
- Test the App with Speculos
- Open a terminal in your docker container
- Clean build files
- Update container
See how to use them in this section.
CI
In the App Boilerplate you will find a list of workflows to set up an efficient CI pipeline for your project.
Two of these workflows are a requirement to submit your embedded application:
- Build_and_functional_tests, which will build the app and run functional tests using the Ragger framework upon Speculos emulation
- Guidelines_enforcer, which calls a reusable workflow guidelines_enforcer developed by Ledger’s internal developer team
Ragger
A Python framework which aims at simplifying the test and overall automatic manipulation of applications running on Ledger devices. It is used by the App Boilerplate’s CI. You can read the full Ragger documentation here.
Speculos
A Ledger device simulator. It is used by the App Boilerplate’s CI. You can read the full Speculos documentation here.