Salpa CLIFor developers

Scaffold a real node in seconds

Salpa CLI turns one command into a complete node package — metadata, code, an isolated environment, and tests. You start from a runnable skeleton built on the same templates our own nodes use, not a blank file.

$ pip install salpa-cli

Apache-2.0 · Python 3.10+ · macOS · Linux · Windows

A real terminal session — salpa new, then pixi run test.
Developer experience

Turning your code into a node is the easy part.

Making that easy has been core to Salpa from the start. A small, templated wrapper turns plain Python into a visual workflow node — no framework to learn, and almost no boilerplate to write by hand. The CLI takes it one step further, scaffolding the whole package so you begin from something that already runs and tests green.

From blank file to working package

One command, a complete package.

Pick a template, answer a few prompts, and get a package that already installs and tests green.

terminal — salpa new
# scaffold a new node package
salpa new protein-analyzer

Template:
  1. individual-node   one node, its own env
  2. multi-node-package several nodes, one shared env
Choose [1/2] (1): 1
Category: Cheminformatics
Hashtags: md, protein, analysis

✔ Created protein_analyzer/
  meta.toml  core.py  node.py  pixi.toml  README.md  tests/
scaffolded · pixi run test → 5 passed
  • meta.tomlPackage metadata — name, category, discovery hashtags, ports.
  • core.pyThe science: pure Python you can unit-test on its own.
  • node.pyA thin wrapper — options + an execute() that calls your core.
  • pixi.tomlAn isolated, reproducible environment for the node’s dependencies.
  • README.mdA ready-to-fill readme — what the node does, its inputs and outputs, and how to run it.
  • tests/A starting test suite so `pixi run test` is green from the first minute.

The directory is a proper Python package; the science lives in core.py and the app integration stays a thin wrapper — the two-level shape every Salpa node uses.

The workflow

Scaffold, write, test, load.

The CLI handles the boilerplate so you spend your time on the science, not the setup.

Scaffold

One command picks a template and fills in the metadata — the directory, class, and files are created for you.

Write the science

Put your logic in core.py — plain Python, testable without the app.

Wrap it

A thin node.py exposes options and an execute() that calls your core.

Test & load

Run the tests in the node’s own environment, then load it into Salpa.

Build your first node.

pip install salpa-cli, then salpa new — you’ll have a runnable node package in seconds. The full node-authoring guide is in the Salpa docs.