Documentation menu

The embeddable widget

The best place to announce a change is inside the product it changed. On Pro, one script tag adds a "What's new" button to your own app; clicking it opens a panel with your latest changelog entries, themed to your brand, without anyone leaving your product.

Installing it

Copy the install snippet from the repo's settings, under Widget — it comes with your repo's id already filled in. It looks like this:

<script src="https://changelogpilot.com/w/v1.js" data-repo="your-repo-id" defer></script>

Paste it into your app's HTML, anywhere you'd put a script tag. That's the whole installation.

What your users see

A floating "What's new" button, bottom-right by default. When you publish an entry the reader hasn't seen, the button shows an unread dot. Clicking it opens a panel with your ten most recent published entries — your theme, your colours — and a link to the full changelog. Opening the panel marks the entries read and clears the dot.

If you'd rather place the button yourself, add data-mount with a CSS selector and the widget renders into that element instead of floating:

<script src="https://changelogpilot.com/w/v1.js" data-repo="your-repo-id" data-mount="#whats-new" defer></script>

Built to be a good guest

The widget is designed to never cause trouble on your page:

  • It can't break your app. Every failure — network trouble, blocked storage, anything — is swallowed silently. Worst case, the button doesn't appear.
  • It doesn't fight your security policy. Styling is applied programmatically rather than injected, so it renders even under a strict Content-Security-Policy.
  • It doesn't track your users for us. The read/unread state lives in the visitor's own browser storage on your origin. No cookies are set, and nothing about the reader is sent to us to power the dot.
  • It loads politely. The script is deferred and the panel is only created when someone actually clicks.

Downgrades

The widget is served live, so on a Free account it stops showing entries — a reader who clicks the button sees a short "this changelog isn't available" note instead. If you downgrade, remove the tag from your app, or leave it in place and it starts working again on re-upgrade.