Skip to content
neuralSPOT-X
API reference
HELIA HUB

nsx.yml

The app manifest. Names the app, the boards it supports, the toolchain and the modules it depends on directly.

nsx.yml fields
FieldTypeDefaultMeaning
schema_versionint (2), requiredManifest schema version. NSX refuses a manifest it does not recognize.
project.namestring, requiredApp name. Used for the CMake project and the default build directory.
targets.defaultstringBoard built when --board is not given.
targets.supportedlist of string, or map of board to overridesBoards this app may be built for. The map form accepts per-board soc, profile and toolchain overrides.
target.boardstringSingle-board shorthand, superseded by targets.
toolchainstringarm-none-eabi-gccDefault toolchain for every board unless a board overrides it.
channelstringRegistry channel the app tracks.
moduleslist of module entriesDirect dependencies. A string is shorthand for a map with only name set.
modules[].namestring, requiredModule name as it appears in the registry.
modules[].projectstringRegistry project that provides the module, when it is ambiguous.
modules[].revisionstringTag, branch or commit constraint for this module.
modules[].boardslist of stringRestrict the dependency to a subset of targets.supported.
modules[].localboolMirror the module from an external path on every sync.
modules[].sourcemapExactly one of path (external directory), vendored (true, committed in this repo) or git (URL, with optional rev).
module_registry.projectsmapApp-local project overrides keyed by project name, each with url, revision, path or local_path.
module_registry.modulesmapApp-local module overrides keyed by module name, each with project, revision and optional metadata.
toolingmapTool settings passed through to the generated build. Keys are preserved as written.
featuresmapFeature flags passed through to the generated build.
profilestringStarter profile the app was created from.
profile_statusstringMaturity recorded for the starter profile.
baselinestring (none)Set to none to skip the board's baseline module set.
schema_version: 2
project:
name: hello_world
targets:
default: apollo510_evb
supported:
- apollo510_evb
- apollo4p_blue_kxr_evb
toolchain: arm-none-eabi-gcc
channel: stable
features: {}

NSX reads nsx.yml through neuralspotx.project_config.load_project_config, which raises NSXConfigError when the document is invalid. The supported schema_version is 2.

Unknown keys: Kept. Unrecognized top-level keys are preserved rather than rejected, so a newer NSX can read a manifest an older one wrote.