Web SDK
Versioning
How the SDK and React packages are versioned, what stays compatible, and how new display formats reach older sites.
Packages
| Package | Version | Notes |
|---|---|---|
@ui-kit/web | 0.1.0 | Exports version with the same number. |
@ui-kit/react | 0.1.0 | Depends on @ui-kit/web. Peer dependency: React 18 or later. |
Both use semver. While the major version is 0, a minor bump may include breaking changes, so pin the version. For the script tag, pin the major version in the URL once a CDN copy exists (@0).
Changes are listed in each package's CHANGELOG.md. Release 0.1.0 was the first. The unreleased changes add banner and slide-in formats and startAutoPlacements(). The source also has the toast, drawer and launcher formats.
Compatibility rules
- Screen JSON is not versioned by the SDK: it renders the format the editor produces. Publishing a screen does not need an SDK update.
- New options are additive. Existing calls behave as before. Result types only grow: code that checks for
purchasedandclosedkeeps working whenactionandskippedexist. - Newer display formats. The SDK asks the API with
v=2. An older SDK that does not send it is never given toast, drawer or launcher settings: for those it gets no display and opens a popup. Placements with those formats are left out of its auto list. A newer SDK that meets a format it does not know draws a modal. - Open-source code. The bundles include Svelte and other libraries, with licenses in
dist/THIRD_PARTY_LICENSES.md. The package is MIT.
Browsers
Current Chrome, Edge, Firefox and Safari (last two versions), iOS Safari 16 and later and Android Chrome.