Documentation Index

Fetch the complete documentation index at: https://docs.unqork.io/llms.txt

Use this file to discover all available pages before exploring further.

Smart Component Types

Prev Next

Every Smart Component is one of three types: UI, Logic, or Query. The type is set when the component is created and cannot be changed afterward. All three types appear in the Component Library section of the component tray. Each is configured through the same settings panel, but behaves differently on the canvas.

Each placement on the canvas is a block: a reference to the component's definition in the Smart Component Library, not the definition itself. The block is what the rest of the module can see, target, and configure. The components inside the block are not directly visible to the module.

The Build Agent names Smart Components with a type prefix. Components beginning with UI- are UI Smart Components. Components beginning with LB- (Logic Builder) are Logic Smart Components. The prefix is visible in the component name on the canvas and in the Smart Component Library.


UI

A UI Smart Component renders a visual interface directly on the module canvas. It receives input values from the module, processes them, and displays output.

On the canvas: Renders inline, like a standard Unqork component. Creators can see the component's output in UI View.

In the settings panel: fields map to the component's declared interface. Set each input as a static value or wire it as a reference to another component's value on the module.

Common uses: Custom display elements, interactive widgets, or data visualizations.

Targeted from other components: The block has visual presence on the canvas, so other components can show or hide it. Other components can also write values that the block reads from submission data.


Logic

A Logic Smart Component has no visual presence on the canvas. It runs in sequence with other components, processes input data, and returns output data through triggers.

On the canvas: Not visible in UI View. Displays in Config View as a logic entry, alongside standard logic components like the Initializer component and Decisions component.

In the settings panel: Input fields map to the component's declared interface. Wire output triggers to pass results to other components on the module.

Common uses: Data transformations, calculations, or conditional logic.

Targeted from other components: The block has no visual presence, so show and hide do not apply. Other components trigger the block to run.


Query

A Query Smart Component reads data from a data source. It is configured like a Plug-In component: inputs are mapped, the query runs when triggered, and results are returned through the post-trigger.

On the canvas: Not visible in UI View. Displays in Config View as a logic entry alongside Logic Smart Components.

In the settings panel: Configure the Target, Post Trigger, and Error Trigger. A read-only Query Pipeline section displays the query's generated definition for reference. The query never runs automatically. It runs only when triggered.

Common uses: Reading submission data, fetching records, filtering data sets, or populating drop-down options from a data source. Query Smart Components are the recommended approach for submission data reads in Unqork modules.

Targeted from other components: The block has no visual presence, so show and hide do not apply. Other components trigger the block to run.


Comparison

UI Logic Query
Visible on canvas Yes No No
Visible in UI View Yes No No
Has output triggers No Yes Yes (post-trigger)
Runs automatically Yes (renders on load) When triggered Never (trigger required)
Reads external data No No Yes
Can be shown/hidden Yes No No
Triggered by other components No Yes Yes

Changelog

Date Change
2026-07-29 Added Build Agent naming prefix note; added block concept to intro; added targeting notes per type; expanded comparison table (EN-7975).
2026-07-28 Initial draft (EN-7975).