This repo is 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, S plus, X), Stax and Flex 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 done on a "per contract" basis, meaning a plugin is required for every DApp.
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 in order to better understand the flow and the context for plugins.
Ethereum plugins need the Ethereum SDK.
You can use the ETHEREUM_PLUGIN_SDK
variable to point to the directory where you cloned
this repository. By default, the Makefile
expects it to be at the root directory of this
plugin repository by the ethereum-plugin-sdk
name.
You can see that this CI 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.
The documentation about the plugin shall be added in PLUGIN_SPECIFICATON.md. It shall includes at least the smart contracts and functions supported by the plugin.
The C source code is expected to be formatted with clang-format
11.0.0 or higher.