Skip to content

Nodes

A node is an instance of a component in your flow. While a component defines functionality, a node represents a specific use of that component with its own configuration and connections.

  • Component: A reusable template (e.g., “RSI Indicator”)
  • Node: A specific instance in your flow (e.g., “RSI for Bitcoin with period 14”)

You can use the same component multiple times in a flow, each as a separate node with different configurations.

Each node has a unique identifier used to reference it in the flow.

The component type this node is an instance of (e.g., “binance.ticker”, “indicator.rsi”).

The specific settings for this node instance:

{
  "symbol": "BTCUSDT",
  "interval": "1m",
  "period": 14
}

The node’s location on the canvas (x, y coordinates).

The current execution state of the node:

  • Idle: Not processing data
  • Ready: Initialized and waiting for input
  • Running: Actively processing data
  • Paused: Temporarily stopped
  • Failed: Encountered an error
  • Completed: Finished processing

Input handles (left side of node) receive data from other nodes:

  • Each input handle corresponds to a component input
  • Can only have one incoming edge per handle
  • Must match the expected data type

Output handles (right side of node) send data to other nodes:

  • Each output handle corresponds to a component output
  • Can have multiple outgoing edges
  • Data is broadcast to all connected nodes

Click on a node to select it and view its properties.

Drag nodes to reposition them on the canvas.

Double-click or click the settings icon to open the configuration panel.

Select a node and press Delete or click the delete icon.

Select a node and press Cmd+C (Mac) or Ctrl+C (Windows), then paste with Cmd+V or Ctrl+V.

When a flow starts:

  1. All nodes transition to “Initializing”
  2. Configuration is validated
  3. Resources are allocated
  4. Nodes move to “Ready” state

During flow execution:

  1. Nodes wait for input data
  2. When data arrives, state changes to “Running”
  3. Node processes the data
  4. Outputs are produced
  5. Node returns to “Ready” state

If a node encounters an error:

  1. State changes to “Failed”
  2. Error message is logged
  3. Downstream nodes may be affected
  4. Flow may pause or stop depending on configuration

Each node can store metadata:

  • Execution count: Number of times processed
  • Last execution: Timestamp of last execution
  • Average duration: Average processing time
  • Error count: Number of errors encountered

Nodes display visual indicators for their state:

  • Green border: Running successfully
  • Yellow border: Warning or paused
  • Red border: Error or failed
  • Gray border: Idle or not started
  • Pulsing: Currently processing data

You can group related nodes together:

  1. Select multiple nodes
  2. Right-click and choose “Group”
  3. Give the group a name
  4. Collapse/expand the group as needed

Groups help organize complex flows.

Give nodes descriptive names that explain their purpose:

  • ❌ “RSI 1”
  • ✅ “RSI for Bitcoin (14 period)“

Arrange nodes in a logical flow from left to right:

[Data Source] → [Processing] → [Decision] → [Action]

Use node colors to categorize by function:

  • Blue: Data sources
  • Green: Processing
  • Yellow: Decisions
  • Red: Actions

Keep an eye on node states during execution to identify bottlenecks or errors.

Be mindful of resource-intensive nodes (e.g., those making API calls) and limit their frequency.

Some nodes can process data in parallel for improved performance.

Some nodes maintain state between executions (e.g., accumulators, counters).

Some nodes support dynamic configuration based on runtime data.

Click on a node during execution to see:

  • Current input values
  • Current output values
  • Internal state
  • Execution logs

Set breakpoints on nodes to pause execution and inspect data.

Step through your flow node by node to debug issues.