Skip to main content
The property system allows you to add configurable, static values to your nodes that appear in the properties panel.

Properties vs Inputs

Critical Distinction:
  • @Property = Static configuration (set once in UI, not connected)
  • @Input = Dynamic data flow (connected to other nodes)
  • @Output = Computed results (generated during execution)

Property Types

String Properties

Number Properties

Options:
  • min - Minimum allowed value
  • max - Maximum allowed value
  • step - Increment step for UI controls

Boolean Properties

Select Properties

Property Options

'string' | 'number' | 'boolean' | 'select'
required
The property type
string
required
Display label in the properties panel
any
Default value for the property
boolean
default:"false"
Whether the property is required
string
Help text shown in the UI
Array<{value: any, label: string}>
Options for select type (required for select type)
number
Minimum value (number type only)
number
Maximum value (number type only)
number
Step increment (number type only)

Property Inheritance

Properties are inherited from base classes:

Complex Property Examples

Configuration Node

HTTP Client Node

Property Validation

Validate properties in the execute method:

UI Integration

Properties appear in the PropertyPanel component:
The PropertyPanel automatically renders appropriate controls:
  • Text input for string
  • Number spinner for number
  • Checkbox for boolean
  • Dropdown for select

Best Practices

Always provide default values that work out of the box.
Include description fields to help users understand each property.
Use min/max/step for numbers to prevent invalid values.
Always validate property values before using them.

Common Patterns

API Configuration

File Operations

Data Processing

Next Steps

Decorators

Learn about all decorators

Inheritance

Property inheritance patterns

Creating Custom Nodes

Build nodes with properties

Decorators API

Complete API reference