diff --git a/.github/workflows/ci-workflow.yml b/.github/workflows/ci-workflow.yml index bae98db4..65b317fe 100644 --- a/.github/workflows/ci-workflow.yml +++ b/.github/workflows/ci-workflow.yml @@ -70,6 +70,8 @@ jobs: name: "nanox" - sdk: "$NANOSP_SDK" name: "nanosp" + - sdk: "$STAX_SDK" + name: "stax" runs-on: ubuntu-latest container: @@ -106,6 +108,8 @@ jobs: name: "nanox" - sdk: "$NANOSP_SDK" name: "nanosp" + - sdk: "$STAX_SDK" + name: "stax" runs-on: ubuntu-latest container: diff --git a/PLUGIN_SPECIFICATION.md b/PLUGIN_SPECIFICATION.md new file mode 100644 index 00000000..ae5c8711 --- /dev/null +++ b/PLUGIN_SPECIFICATION.md @@ -0,0 +1,24 @@ +# Technical Specification + +> **Warning** +This documentation is a template and shall be updated. + +## About + +This documentation describes the smart contracts and functions supported by the boilerplate plugin. + +## Smart Contracts + +Smart contracts covered by the plugin shall be described here: + +| Network | Version | Smart Contract | Address | +| ---- | --- | ---- | --- | +| NetworkName | VX | ContractName | `0x0000000000000000000000000000000000000000` | + +## Functions + +For the smart contracts implemented, the functions covered by the plugin shall be described here: + +|Contract | Function | Selector | Displayed Parameters | +| --- | --- | --- | --- | +|ContractName | FunctionName | `0x00000000`|
type ParameterName
| \ No newline at end of file diff --git a/README.md b/README.md index dd91d619..d22eff17 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,13 @@ +[![Ensure compliance with Ledger guidelines](https://github.com/LedgerHQ/app-plugin-boilerplate/actions/workflows/guidelines_enforcer.yml/badge.svg)](https://github.com/LedgerHQ/app-plugin-boilerplate/actions/workflows/guidelines_enforcer.yml) +[![Compilation & tests](https://github.com/LedgerHQ/app-plugin-boilerplate/actions/workflows/ci-workflow.yml/badge.svg)](https://github.com/LedgerHQ/app-plugin-boilerplate/actions/workflows/ci-workflow.yml) + + # app-plugin-boilerplate This repo is a meant to be a forkable example of a plugin. Plugins are lightweight applications that go hand-in-hand with the Ethereum -Application on a Nano S / X device. +Application on a Nano (S, S plus, X) and Stax devices. They allow users to safely interact with smart contracts by parsing the transaction data and displaying its content in a human readable way. This is @@ -13,7 +17,7 @@ The code has been commented, and special "EDIT THIS" comments indicate where developers are expected to adapt the code to their own needs. It is STRONGLY recommended to follow the -[plugin guide](https://developers.ledger.com/docs/dapp/nano-plugin/overview/) +[plugin guide](https://developers.ledger.com/docs/dapp/embedded-plugin/code-overview/) in order to better understand the flow and the context for plugins. ## Ethereum SDK @@ -23,10 +27,14 @@ You can use the `ETHEREUM_PLUGIN_SDK` variable to point to the directory where y this repository. By default, the `Makefile` expects it to be at the root directory of this plugin repository, by the `ethereum-plugin-sdk` name. -This repository is deliberately **not** a submodule. You can see that the CI workflows -clone and checkout either the latest `master` or on `develop` references. This ensures +You can see that this [CI](https://github.com/LedgerHQ/app-plugin-boilerplate/blob/develop/.github/workflows/check_sdk.yml) workflow +verifies that the SDK used is either on the latest `master` or `develop` references. This ensures the code is compiled and tested on the latest version of the SDK. +## Documentation + +The documentation about the plugin shall be added in [PLUGIN_SPECIFICATON.md](https://github.com/LedgerHQ/app-plugin-boilerplate/blob/develop/PLUGIN_SPECIFICATON.md). It shall includes at least the smart contracts and functions supported by the plugin. + ## Formatting The C source code is expected to be formatted with `clang-format` 11.0.0 or higher.