Skip to main content

Flow, display and utilities

Loops and conditionals, debug and display nodes, sticky notes and subsystems.

10 nodes. Right-click any node in the editor to read this documentation in the app.

Annotationโ€‹

๐Ÿ“ Sticky Noteโ€‹

id sticky_note ยท Annotation ยท Python export: yes

A note for the canvas: write comments, instructions or TODOs next to the nodes they describe. It has no inputs or outputs and does nothing when the workflow runs. The text is saved with the workflow and appears as # comments in the Python export. Drag it by its header; drag the note's bottom-right corner to resize it (the size is saved with the workflow too).

Fields

FieldTypeDefaultChoices
Notetextarea

Control Flowโ€‹

๐Ÿ”š End For Loopโ€‹

id end_forloop ยท Control Flow ยท Python export: yes

End of a loop body. Closes the loop started by For Loop and passes on the last iteration's value to nodes after the loop.

Inputs

PortTypeDescription
inAnyValue produced by the loop body.

Outputs

PortTypeDescription
outAnyThe body value from the final iteration.

๐Ÿ” For Loopโ€‹

id forloop ยท Control Flow ยท Python export: yes

Start of a loop. Runs everything between this node and its End For Loop once per item in the wired-in sequence; the output is the current item.

Inputs

PortTypeDescription
valueslistSequence to iterate over (e.g. a List node).

Outputs

PortTypeDescription
valueAnyThe current iteration's item.

Debugโ€‹

โ„น๏ธ Dataset Infoโ€‹

id dataset_info ยท Debug ยท Python export: yes

Diagnostic passthrough: shows the type, shape and length of whatever is wired in, and forwards the value unchanged.

Inputs

PortTypeDescription
valueAnyAny value to inspect.

Outputs

PortTypeDescription
valueAnyThe input, unchanged.

๐Ÿ–จ๏ธ Print / Debugโ€‹

id print_debug ยท Debug ยท Python export: yes

Show whatever is wired in as a preview on the node (tables, arrays, lists, dicts, scalars) and print a one-line summary to the log. The value is passed through unchanged, so it can sit in the middle of a chain.

Inputs

PortTypeDescription
multi_inputAnyAny value to display.

Outputs

PortTypeDescription
valueAnyThe input value, unchanged.

Displayโ€‹

๐ŸŽ›๏ธ Dashboard Parameterโ€‹

id dashboard_parameter ยท Display ยท Python export: yes

A value the viewer of an exported dashboard can change. Here in the editor it simply emits its Default; in the exported dashboard it becomes a control (a slider or number box, text box, checkbox or drop-down depending on Type), and pressing Recalculate re-runs the workflow with the value they picked. Name is the key the dashboard uses and must be unique and a valid identifier (letters, digits, underscore); Label is the text shown next to the control. Type is float, int, str, bool or select. Min, Max and Step (numbers only; leave blank for none) bound the control and are enforced on the backend. Options (select only) is a comma-separated list, and the Default must be one of them.

Outputs

PortTypeDescription
valueAnyThe parameter's value: the viewer's choice on a dashboard recalculation, else the default.

Fields

FieldTypeDefaultChoices
Nametextparam
Label (shown on the dashboard)text
Typeselectfloatfloat, int, str, bool, select
Defaulttext0
Min (numbers; blank = none)text
Max (numbers; blank = none)text
Step (numbers; blank = none)text
Options (select; comma-separated)text

๐Ÿ”ข KPI Tileโ€‹

id kpi_value ยท Display ยท Python export: yes

Show a single wired-in number as a big-number tile (label + value + optional unit) โ€” the dashboard-panel equivalent of a scorecard. The value passes through unchanged.

Inputs

PortTypeDescription
valueAnyThe numeric value to display.

Outputs

PortTypeDescription
valueAnyThe input value, unchanged.

Fields

FieldTypeDefaultChoices
Labeltext
Unit (suffix)text
Decimal placesint2

Subsystemโ€‹

๐Ÿงฉ Run Subsystemโ€‹

id run_subgraph ยท Subsystem ยท Python export: yes

Run another .weave file from this project as a subsystem. Its inputs are the file's Subsystem Argument nodes and its outputs are its Subsystem Return nodes; the file on disk is what runs (not unsaved edits in an open tab). The optional args_dict input passes {argument name: value} pairs and overrides wired arguments of the same name.

Inputs

PortTypeDescription
args_dictdictOptional {argument name: value} overrides.

Outputs

PortTypeDescription
returnsAnyThe subsystem's Return values (one port per Return, in Order).

Fields

FieldTypeDefaultChoices
Subsystem filesubsystem_file

๐Ÿ“ฅ Subsystem Argumentโ€‹

id subsystem_input ยท Subsystem ยท Python export: yes

An input of this .weave when another workflow runs it as a subsystem (Run Subsystem node). Emits the value the caller passed for its Name; when the file is run on its own it emits its Default instead, so the workflow stays testable standalone. Order sets the port order on the calling node (lowest first).

Outputs

PortTypeDescription
valueAnyThe argument's value: passed by the caller, else the default.

Fields

FieldTypeDefaultChoices
Nametextarg
Orderint1
Typeselectanyany, int, float, str, bool, list, dict
Defaulttext

๐Ÿ“ค Subsystem Returnโ€‹

id subsystem_output ยท Subsystem ยท Python export: yes

An output of this .weave when another workflow runs it as a subsystem. Whatever is wired in becomes the value the caller receives on the port named Name; Order sets the port order on the calling node (lowest first). Also previews the value when the file is run on its own.

Inputs

PortTypeDescription
valueAnyThe value to return to the caller.

Outputs

PortTypeDescription
valueAnyThe same value, passed through.

Fields

FieldTypeDefaultChoices
Nametextresult
Orderint1
Typeselectanyany, int, float, str, bool, list, dict