Skip to main content

Custom Dashboard vs Custom Widget

warning

Custom Dashboard is experimental. This feature may change or be removed.

Both let you ship your own HTML, but they solve different jobs. Pick the wrong one and you will fight the platform (or hit limits that look like bugs).

Side by side​

Custom DashboardCustom Widget
ScopeThe whole dashboard is your HTML page.One tile on a Normal or Blueprint dashboard.
HostingUpload one HTML file to TagoIO. TagoIO hosts the uploaded file (versioned).You host the URL yourself (for example Files).
DatapostMessage bridge: saved TagoSQL queries, Analysis Endpoints, and live data streams on devices and entities.Device variables, resources, realtime, send data, Analysis, full widget data model.
Protocoldashboard:ready, dashboard:theme, optional dashboard:style; data via dashboard:request / dashboard:response; live data via dashboard:event.Full custom-widget library handshake.
RUN / shareAdmin and signed-in TagoRUN users; Run users cannot edit the shell. No public share or distribute.Supported with widget dashboards (subject to your Run and share setup).
EditorNo in-app HTML editor. Download, edit offline, re-upload.Edit and host outside Admin; point the widget at the URL.
Create UICreate dialog tab Custom HTML (type "custom").Add a Custom Widget on a Normal or Blueprint dashboard.

Choose a Custom Dashboard when​

  • You need a full-page app or report, not a cell in a widget grid.
  • Saved TagoSQL queries, Analysis Endpoints, and live data streams over the postMessage bridge fit the page's needs.
  • Viewers are Admin users or signed-in TagoRUN users.
  • You want TagoIO to host and version the HTML file.

Start at Custom Dashboard, then Authoring HTML and SQL and Endpoint Bridge.

Choose a Custom Widget when​

  • The custom UI is one component among other TagoIO widgets.
  • You need the widget data model: device variables, send data, or Analysis hooks.
  • The dashboard must work in share or distribute flows, or for the TagoRUN Anonymous User.
  • You already host static assets (or will use Files) and can point a widget at a URL.

See Custom Widget Overview.

Common mix-ups​

AssumptionReality
"Custom HTML" in create means a Custom Widget.That tab creates a Custom Dashboard (type "custom"). Widgets are added inside Normal or Blueprint dashboards.
Custom Dashboard can use the custom-widget library the same way.Different protocol. Custom Dashboard uses dashboard:* messages only.
Custom Dashboard binds devices like a Normal dashboard.It uses saved TagoSQL queries and Analysis Endpoints over postMessage, not device-variable widgets.
Realtime needs a Custom Widget.A Custom Dashboard streams device and entity writes through the bridge. In TagoRUN a Run user streams a device with Dashboard access on it, an entity with Blueprint access, or either through a widget on a Normal or Blueprint dashboard the Run user has Access to that shows it. See Live data.
Device permissions limit what a Custom Dashboard shows Run users.They limit streams, not queries. The watch list from sql.run names only devices and entities the Run user has access to, while a query returns its full result: scope SQL results inside the query, and scope Endpoint responses inside the Analysis using the caller's identity.