Skip to main content
The widget puts your release notes inside your product, where customers already are, instead of hoping they visit your page. Attach it to a “What’s new” button or a bell icon, and new releases surface automatically.

What it does

  • Shows your published releases and roadmap in a panel inside your app
  • Automatically pops up the latest release a visitor hasn’t seen yet
  • Follows a light, dark, or system theme
  • Can be opened, closed, and positioned programmatically from your own UI

Set it up

1

Get your script

Go to Settings → Widget. You’ll find your widget script and a preview.
2

Install it

Add the script to your app, or install the SDK via npm, yarn, or CDN. Full instructions in Widget install.
3

Configure and control it

Set appearance and behavior options with configuration, and open or close the widget and popup with the methods.

How “seen” state works

The widget does not identify users, and there is no user or identity option to pass to it. Instead, it tracks which releases have already been shown in an onset:latest cookie on your own domain, holding a comma-separated list of release IDs. On load, the widget compares your latest release against that cookie:
  • Not in the cookie: the release popup opens, and the ID is added to the cookie.
  • Already in the cookie: nothing happens.
  • No cookie at all: the current latest release ID is recorded and no popup is shown, so a first-time visitor isn’t interrupted by an announcement they have no context for.
Set showLatestPopup: false in your configuration to disable the popup entirely and open the widget only when the user asks for it.
Because seen state lives in a cookie, it is per browser and per domain. The same person on a second device, in a different browser, or after clearing cookies will be treated as new. If you need per-user read state, track it yourself and call openPopup when you decide it’s warranted.

What appears in the widget

The same published, public releases that appear on your page. Private releases and drafts are excluded.
Put the widget trigger somewhere persistent, like a nav bar or user menu, rather than in a modal users close and never open again.