> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hyperwisor.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Widget Reference

> All 50 dashboard widgets, grouped by category.

The designer ships **50 widgets** across five categories. Every widget uses the
four-tab properties model ([General / Style / Triggers / Data](/dashboard/overview))
and a common set of Style controls; each category page documents the widgets'
distinctive settings.

<CardGroup cols={2}>
  <Card title="Controls (15)" icon="sliders" href="/dashboard/widgets/controls">
    Send commands or capture input — Button, Switch, Slider, Text Input, Form,
    Database Form, Color Picker, Joystick, Countdown, Schedule, Rule, WebRTC
    Camera, Voice to Text, Spotify, Payment.
  </Card>

  <Card title="Display (24)" icon="chart-line" href="/dashboard/widgets/display">
    Visualize data — Gauge, Chart, Table, Map, Compass, Heatmap, Attitude, 3D
    Viewer, Virtual Twin, and more.
  </Card>

  <Card title="Navigation (3)" icon="compass" href="/dashboard/widgets/navigation">
    Menu, Navigate Page, URL Button.
  </Card>

  <Card title="Shapes (7)" icon="shapes" href="/dashboard/widgets/shapes">
    Rectangle, Ellipse, Triangle, Polygon, Star, Line, Arrow.
  </Card>

  <Card title="Utility (1)" icon="wrench" href="/dashboard/widgets/utility">
    PDF Export.
  </Card>
</CardGroup>

## How widgets connect to devices

* **Display widgets** read a bound value or field path, or receive pushes from
  firmware by their **widget ID** (`updateWidget(targetId, widgetId, value)`).
* **Control widgets** send commands in the Triggers tab; firmware receives them
  through its command handler.

See [Binding Data](/dashboard/binding-data) for the full model.
