> ## 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.

# HTML Viewer

> Render custom HTML in a sandboxed frame.

<Info>
  **Category:** Display · **Renders:** custom HTML · **Sends commands:** no
</Info>

## Mental model

An **HTML Viewer is an embedded web page.** Drop in your own HTML and it renders in a
sandboxed frame — an escape hatch for anything the built-in widgets don't cover.

## When to use it

* Custom markup, an embedded widget, a third-party snippet
* Bespoke display that no standard widget provides

## Settings

### General

* **HTML code** — the markup to render
* **Sandbox permissions** — iframe sandbox flags
* **Show controls** — viewer chrome

<Warning>
  The HTML runs in a sandbox. Grant only the permissions it needs, and treat any
  external/embedded content as untrusted.
</Warning>

## Script API example

The same interactions from a [dashboard script](/script/overview):

```js theme={null}
// Reveal the embed from a switch elsewhere on the dashboard
widget.on('embedToggle', 'toggle', (on) => on ? widget.show('embed') : widget.hide('embed'));
```

<Card title="Widget reference" icon="table-cells" href="/dashboard/widgets/overview">
  Prefer a built-in widget when one fits.
</Card>
