Mozilla.UITour is a JS library that exposes an event-based Web API for
communicating with the Firefox browser chrome. It can be used for tasks such
as opening menu panels, highlighting buttons, or querying Mozilla account
signed-in state. It is supported in Firefox 29 onward, but some API calls
are only supported in later versions.
For security reasons
Mozilla.UITour will only work on white-listed domains
and over a secure connection. The list of allowed origins can be found here:
Mozilla.UITour library is maintained on Mozilla Central.
The API is supported only on the desktop versions of Firefox. It doesn’t work on Firefox for Android and iOS.
To develop or test using Mozilla.UITour locally you need to create some custom
browser.uitour.testingOrigins(string) (value: local address e.g.
browser.uitour.testingOrigins can be a comma separated list of domains, e.g.
Prior to Firefox 36, the testing preference was called
(Bug 1081772). This old preference does not accept a comma separated list of domains, and you
must also exclude the domain protocol e.g.
https://. A browser restart is also required
after adding an allowed domain.
If you are working on Mozilla accounts integration, you can use the
config property to change the Accounts server. For example, to change it to stage environment use this value:
https://accounts.stage.mozaws.net/. Restart the browser and make sure the configuration updated.
identity.fxaccounts.remote.root preference should now point to
If it has not changed for some reason, update it manually.
The UITour API documentation can be found in the Mozilla Source Tree Docs.