Manifest Declaration
Each Node requires a Manifest declaration. In the Manifest declaration you define the Node configuration as described in the Manifest Fields below.
A manifest must include, at a minimum, the name
field, but may also include any of the optional fields like icon
, keywords
, or description
.
name: Number Doubler
description: Simple node that doubles a number.
icon: mdi:star
environments: browser
sandbox: browser.shadow
Manifest Fields
General
name
- Visible title for the Node. Required field.
description
- A description about what the node does. The description of the Node should be relatively short. To add more details beyond the description, use the documentation
field.
icon
- Openexus supports Iconify's icon sets and one can reference one of those exposed public icons to display for the node. For more information about Iconify, please see https://icon-sets.iconify.design.
documentation
- Longer form details about how the Node works and anything anyone using the Node would need to know or do.
categories
- Categorical tags for the Node used when organizing Nodes for user selection. You may specify up to two categories in a comma separated format from the following category list. Any category that does not meet this list or exceeds the category allowance will be ignored. Please see the Categories section below.
keywords
- Useful keywords that this Node may be found under when searching for new Nodes. You may specify any number of keywords as a comma-separated string. Keywords are case-insensitive and may contain spaces, but may not start with or end with a space.
thumbnail
- A thumbnail image to represent this Node. A thumbnail must be a fully formed url to an image externally available.
screenshots
- Zero or more screenshots to illustrate this Node and how it works. Screenshots must be a fully formed url to an image externally available.
Runtime
environments
- The execution environments in which this node runs. Currently supports browser
, js-runtime
, or browser|js-runtime
.
sandbox
- What sandboxing container should Openexus use. That is, how should Openexus contain the node code from leaking out into other nodes and the underlying environment. The only value currently supported is browser.shadow
.
Compilation
compiler
- What compiler should be used for this node. The compiler setting signals to Openexus how to compile and execute the code, including what, if any, framework is to be supported. Valid values: js
, js/react@19
, js/svelte@5
, js/vue@3
, js/solidjs@1
dependencies
- Used to specify a list of dependencies. Has the form of <library>@<version>
. For example svelte/store@3.3.2
or chartsjs@12.4.2
.