Skip to content

Creating a standalone script

You don't have to go through the Helper: you can create and maintain your own Waze userscript for Switzerland. This page gives the landmarks; the code conventions apply to your project too.

Starting point

A userscript runs in the WME through Tampermonkey (or Greasemonkey on Firefox). To touch the map, go through the official WME SDK, typed by wme-sdk-typings, documented at waze.com/editor/sdk. Avoid DOM hacks that bypass the SDK: they break on every WME update.

The Helper is a good example of a complete SDK project (TypeScript + Rollup + tests) to draw inspiration from.

Hosting the code

Publish the code on GitHub (public repository), with a clear license. A script useful to the community can be proposed to the Waze-Dev-CH organization to be maintained collectively: discuss it on the community Discord (DACH region).

Publishing and installing

The userscript header (// ==UserScript==) carries the install and update metadata:

  • @downloadURL / @updateURL: the URL of the .user.js (e.g. a GitHub release file) so Tampermonkey installs and updates automatically.
  • @match https://www.waze.com/*editor*: restrict execution to the WME.

Optional: also publish on GreasyFork for discoverability.

Conventions

Follow the code conventions: SDK conformance, code written to be read. If the script is multilingual, provide all four languages (de, en, fr, it).

Sharing with the community

Déjouons le trafic, ensembleGemeinsam dem Verkehr entfliehenSuperiamo il traffico, tutti assiemeOutsmarting traffic, together

Waze Community Switzerland · Community documentation, not affiliated with Waze/Google