Skip to content


Download via Git

This option requires several command-line tools:

Once these are installed, you should:

## Navigate to your extension directory, e.g.
cd sites/default/files/civicrm/ext

## Download the extensions
git clone
git clone
git clone

## Download additional dependencies
./bin/ -D

The script bin/ handles various build activities:

## Download dependencies
./bin/ -D

## Regenerate DAOs
./bin/ -g

## Build zip archive
./bin/ -z

Styling Changes

We use Gulp and Sass for styling and handle different running tasks. Firstly, you should install node packages using npm package manager:

npm install

Styling changes should go into sass directory and compiled to CSS using the following command:

gulp sass

Once you are done making your changes, please use BackstopJS (see Testing to check for any possible visual regression issues

Patching Mosaico

This extension ships with a patched version of Mosaico. The patches are maintained as a fork in using Twigflow (Rebase).


Whenever a change is merged or pushed to, a bot automatically builds a new zip archive and publishes

The build/publish process has a few properties:

  • It combines, civicrm/mosaico, and any other runtime dependencies into one zip file.
  • The version number is determined by reading info.xml (<version>) and appending the current Unix timestamp.
  • Example: If the version is declared as 1.0.beta1, then it will be published as 1.0.beta1.1478151288.
  • Three files are published:
  • The zip archive
  • The new info.xml file
  • A JSON document describing the build.
  • An alias is provided under the folder latest.

The bot does not publish the new version to To do this, take the new info.xml file and manually upload it. Since provides a directory of past and current versions, be sure to specify the download-URL for a specific version number (e.g. 1.0.beta1.1478151288) rather than an alias (latest).