Widgets / directory

Tabs

TABS

Navigation widget that splits a large dashboard into multiple pages inside one project.

At a glance

Default8 x 1
Minimum8 x 1
Resizehorizontal
Pinoptional
Interactiveyes

Behavior

  • Critical for large dashboards where one board has many control surfaces.
  • The app treats it as always visible when switching tab content.
  • Other widgets are filtered by tabId while the Tabs widget itself lives on the special always-visible tabId -1.

Firmware contract

No firmware contract; this is a UI-only organizer widget.

On the app side this widget snaps to the 8-column square grid and uses horizontal resizing. Its raw type is TABS and the matching icon token in the app is rectangle.split.3x1.fill.

Pin support: No pin binding. This is pure dashboard structure.

Transmission: Changes local tab visibility and selected tab context inside the dashboard only.

Canvas preview

docs.widget.preview
25
STATUS

Widget contract

PropertyValue
Raw typeTABS
Default size8 x 1
Minimum size8 x 1
Resize modehorizontal
Pin requirementoptional / infrastructure
Pin supportNo pin binding. This is pure dashboard structure.
Interactiveyes
TransmissionChanges local tab visibility and selected tab context inside the dashboard only.

Allowed pin families

No pin binding. This is pure dashboard structure.

Transport path

Changes local tab visibility and selected tab context inside the dashboard only.

Operational limits

Poor tab naming makes large dashboards harder to operate than a flatter project split

Configuration surface

  • tabs array stores id and label per tab
  • new dashboards in the app start with at least two tabs if none are configured
  • dashboard children with matching tabId are filtered by this widget

Limits and caveats

  • Poor tab naming makes large dashboards harder to operate than a flatter project split
  • This is a pure structural widget and does not talk to firmware at all

Layout notes

Canvas footprint

8 x 1

Default footprint in the Plynx canvas before user resizing.

Resize floor

8 x 1

The minimum size accepted by the app during drag-resize.

Interaction model

Live input

Whether the user edits state directly or only reads it.

Related widgets