Chameleon supports Single Page Applications (SPAs) and all common front-end frameworks (e.g. React, Angular, Ember, etc.) using our URL and element matching conditions.

Chameleon requires an initial page load to identify users, but then polls regularly to check whether a tour should show based on changing criteria (page URL or user activity). There is no separate implementation work required for single-page applications.
When installing the Chameleon snippet on your SPA, make sure chmln.identify
is called when your app learns what user is on the page (likely because the user logs in or refreshes the page).
If the content of your SPA changes but no page-refresh or log-in / log-out happens, then chmln.identify
does NOT need to be called again.
The chmln
namespace is found within the window
scope, and can be accessed at window.chmln
in scoped frameworks.
Accessing window.chmln
from Angular (or Typescript)
declare var window: any;
...
const chmln = window['chmln'];