WMT Tool

The WEM Design Templates sync Tool

The WEM Design Templates tool is a command line interface (CLI) to manage and synchronize WEM Design Templates.

With this tool you can connect to the WEM Design Template Server, get available design templates, create copies and upload changes.

To change the contents of Design Template (html, css, less) you can use the Visual Studio Code editor,that allows you to access the local copies of your Design Templates, and provides a powerful tool to work with the files and make changes.

Getting started with WMT

Download and run the WDT Installer from the following location:

WINDOWS
MacOS

Type: installer

Type: zip containing WMT (without extension)

The publisher is not officially trusted by Windows, so you will have to explicitly override the warning to allow download and installation of this file.

  • Make sure to add the file WMT to your usr/local/bin folder (or create one if it does not exist)

  • Use chmod +x WMT to make sure the file is executable.

  • Configure the template folder path without relative paths. For example /Users/MyUser/Documents/Templates

Uninstall old Windows version manually

If you have a version from before 2024-12-13, you need to uninstall this version manually before installing the new version.

If you have used the defaults when installing WMT, you should find the old version and its uninstaller in:

C:\Program Files (x86)\Wem\Wmt

This is the 32-bit version. In this folder, you'll find the unins000.exe file, which will remove this version.

After installing the new WMT using the defaults, you will find it in:

C:\Program Files\Wem\Wmt

This is the 64-bit version.

Following information is based on Windows usage.

For MacOS-users, please use the appropriate corresponding commands and syntax.

​After installation, the wmt command is available from the command prompt (or PowerShell):

C:\> wmt

The first time you run this command, it will ask for a few configuration settings:

  1. Username - this should be the e-mail address that you use to login to the WEM Modeler.

  2. Template path - the location where the design templates are stored locally. An example location could be C:\WEM Design Templates or E:\Wem\DesignTemplates as used in examples below.

C:\> wmt
No configuration found.

Username: *************
Template path: E:\Wem\DesignTemplates

The configuration has been saved.

These settings can always be changed by running wmt config set:

C:\> wmt config set -?

Description:
  Alters the current configuration

Usage:
  Wmt config set [options]

Options:
  -s, --server <server>  The hostname of the remote wmt server
  -u, --user <user>      The user which will be used to connect to the remote wmt server
  -p, --path <path>      The root directory in which all the master templates are stored
  -?, -h, --help         Show help and usage information

WMT Login

Before working with the WMT tool, you need to login with the following command:

C:\> wmt login

This will start the WEM Login Portal (single sign on) on login.wem.io - where you can use your WEM account and MFA settings for secure login. If you already have a valid WEM Login session in your standard browser (for modeler or mywem), this session will be used to authenticate your WMT access.

The WEM Login in the browser can be set aside, or browser can be closed, while you continue in the WMT Tool in your Command Prompt / Powershell window (where it should show login successful). You can also explicitly logout of the WMT Tool, using the wmt logout command. This will remove your local access token for the WMT tool only. This will NOT end your WEM Browser Session, so you can continue your Modeler or MyWEM sessions in the browser without interruption.

WMT Features

Use -? with any command to show help and usage information

C:\> wmt -?
Description:
  WMT is a tool to manage WEM design templates

Usage:
  Wmt [command] [options]

Options:
  --version       Show version information
  -?, -h, --help  Show help and usage information

Commands:
  config
  login       Logs in to the remote wmt server
  logout      Logs out from the remote wmt server
  collection
  template
  version     Shows the version of this WMT command line interface

Config

C:\> wmt config -?
Description:

Usage:
  Wmt config [command] [options]

Options:
  -?, -h, --help  Show help and usage information

Commands:
  show  Shows the current configuration
  set   Alters the current configuration

C:\> wmt config show
Server:     https://wmt.wem.io
User:       ******************
Path:       E:\Wem\DesignTemplates
Logged in:  yes

Collection level commands

To get access to already existing custom Design Templates / Collections through the WMT Tool, WEM Support needs to explicitly link your account to the Design Template Collections.

This is NOT necessary if you want to work with existing Global Templates as a base for new custom templates > read "Create a new Design Template from a Source Template" further down this page.

Please create a Support Ticket in MyWEM, requesting access to specific Custom Design Template Collections, make sure you specifically indicate the Custom Design Templates you need access to.

A collection is used to group multiple Design Templates and can be linked to Workspaces, to make the Design Templates available in WEM Modeler Projects within those Workspaces. To make a certain Collection available to projects in your workspace, you need to use the share command to create a token, then use that token in WEM Modeler > Manage Workspaces > Add Design Template Collection.

C:\> wmt collection -?
Description:

Usage:
  Wmt collection [command] [options]

Options:
  -?, -h, --help  Show help and usage information

Commands:
  list           Shows a list of existing template collections
  create <name>  Creates a new template collection
  share <name>   Creates a token to link the collection to workspace

Template level commands

C:\> wmt template -?
Description:

Usage:
  Wmt template [command] [options]

Options:
  -?, -h, --help  Show help and usage information

Commands:
  list             Shows a list of existing templates
  download <name>  Downloads an existing template from the server
  create           Create a new template
  pull             Pulls the latest version from the server
  push             Pushes the local changes to the server
  commit           Commit the changes on the server
  compare          Compares the local files with the version on the remote server
  autopush         Watches for file changes and automatically pushed the changes to the server

The list, download and create commands can work from any current folder, because they use the root-folder from the configuration and fully-qualified Design Template Names ("Collection\Template") in case of download and create.

All other commands MUST be executed from within the local folder of a specific Design Template, so make sure you use the Change Directory (cd) command to set your CLI into the correct Template Folder.

Get List of Available Templates

PS E:\WEM\Design Templates\> wmt template list /?
Description:
  Shows a list of existing templates

Usage:
  Wmt template list [options]

Options:
  -c, --collection <collection>  When provided, only shows the template of this collection
  -g, --global                   This flag shows the global design templates
  -?, -h, --help                 Show help and usage information

The available Global Templates can be used as source for your own new custom Templates. To get a list of all available Global Templates, use wmt template list --global:

PS E:\Wem\DesignTemplates> wmt template list --global
NAME                              CREATED             MODIFIED
Global\Corcovado                  31-5-2022 06:53:08  31-5-2022 06:53:08
Global\Customizable - Main        31-5-2022 06:53:08  31-5-2022 06:53:08
Global\Dashboard - Basic blue     31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Dashboard - Basic grey     31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Dashboard - Basic purple   31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Dashboard - Basic red      31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Dashboard - Dark and blue  31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Dashboard - Light          31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Default                    31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Foodz.nl                   31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Grand Canyon               31-5-2022 06:53:09  31-5-2022 06:53:09
Global\Mobile - Android           31-5-2022 06:53:10  31-5-2022 06:53:10
Global\Mobile - iOS               31-5-2022 06:53:10  31-5-2022 06:53:10
Global\Mont Blanc                 31-5-2022 06:53:10  31-5-2022 06:53:10
Global\Mont Forel                 31-5-2022 06:53:10  31-5-2022 06:53:10
Global\Dashboard - Tokelau light  7-7-2022 16:21:10   7-7-2022 16:21:10
Global\Basic - Amethyst           7-8-2023 13:29:45   7-8-2023 13:29:45
Global\Basic - Graphite           7-8-2023 13:30:04   7-8-2023 13:30:04
Global\Customizable - Snowflake   2-12-2024 15:26:29  2-12-2024 15:26:29

Create a new Design Template from a Source Template

PS C:\> wmt template create -?
Description:
  Create a new template

Usage:
  Wmt template create [options]

Options:
  -n, --name <name> (REQUIRED)      The name of the new template
  -s, --source <source> (REQUIRED)  The name of the source template
  -?, -h, --help                    Show help and usage information

To create a new Design Template, you always use an existing Design Template as source. A copy of all files and folders will be made with the new Template's name.

The Names of the source and new Template should contain Collection and Template names:

-n "My Collection Name\My Template Name" -s "Source Collection Name\Source Template Name"

Download design template to local

After creating the new Design Template (which happens on the server) you need to download it in order to start editing the template locally.

You need to have a local copy of the Design Template before you can push or pull changes.

PS E:\Wem\DesignTemplates> wmt template download "Collection Name\Template Name" 
...

All following commands MUST be executed from within the local folder of a specific Design Template, so make sure you use the Change Directory (cd) command to set your CLI into the correct Template Folder.

In the examples replace \Collection with the actual collection's name, and \Template with the actual template's name.

Compare local with server

From within a local Design Template Folder, the WMT tool compares the local files to the server files and provides details on the files and lines which are different.

PS E:\Wem\DesignTemplates\Collection\Template> wmt template compare
...
Only on server: ...
Different version: ...
...

Pull to update local version

To pull the latest version of a specific Design Template or push changes from your local folder to the WMT Server, you first need to go to the correct folder in your CLI tool, until you see a path like the WMT root directory + collection name + template name; and then use wmt template pull

PS E:\Wem\DesignTemplates\Collection\Template> wmt template pull
...
Added file ...
Updated ...
...

Push to send local changes to server

The push command updates the remote files with the local changes you made. This action will also perform a compile (LESS to css) and control step to inform you of any issues that may be in the contents.

PS E:\Wem\DesignTemplates\Collection\Template> wmt template push
...

The push command will NOT update the Design Template in the WEM Modeler at this stage!

For that final step - to update the Modeler to use the changed template - you need to execute the commit command.

Commit to start using changes

From within a local Design Template Folder, the commit action performs the final step to make your changes available to the WEM Modeler for Preview, and for the publish process to Staging and Live.

PS E:\Wem\DesignTemplates\Collection\Template> wmt template commit
...
...

Mind: only after Publish to Staging and Live, the changes in the Design Template will become available in those runtimes.

Autopush

When you use the autopush command in a specific local Design Template folder, it will automatically trigger the push command when a local file has been changed and saved during the session while the WMT is active

PS E:\Wem\DesignTemplates\Collection\Template> wmt template autopush
...
Watching for file changes. Press "q" to stop watching...

Last updated

Was this helpful?