During the month of November, we made a concerted effort to stabilize the CiviCRM-Mosaico extension -- addressing several bugs, installation issues, missing features, and testing processes. I'm happy to announce a new beta releases of the Mosaico and FlexMailer extensions for CiviCRM. The updates include ~160 commits from ~15 contributors.
v2.0-beta3 has been made possible through the work of over a dozen people. Multiple contributions were provided by the maintainers (Deepak Srivastava of Veda and Tim Otten of CiviCRM) as well as the Compucorp theming team (Maged Adel, Mihael Mladenov, Mukesh Ram), Matthew Wire (MJW), and Samuel Vanhove (SymbioTIC). Additional contributions were provided by Anne Dru, David Snopek, Francesc Bassas, Jitendra Purohit, John Kingsnorth, Matthew Roberts, and Philipp Batroff. And, of course, all of this is built on the great upstream project, Void Labs' Mosaico.
(And I apologize if I've missed anyone -- it's hard to keep track with all the ways people contribute.)
To install the latest beta, consult the README.
v2.0-beta3has been mostly tested on the pre-release version of CiviCRM
v4.7.29, but it's also been lightly tested on
Overall, the general aim of beta3 was to resolve open PRs and common issues. Many of the changes are bugfixes aimed at "doing what you expect", e.g.
Additionally, some improvements have a more conscious impact on users, administrators, or developers. Let's explore those a bit further.
Deploying the Mosaico extension requires several steps, such as installing ImageMagick, FlexMailer, Shoreditch, and the upstream Mosaico codebase. Each step is an opportunity for something to go wrong -- to omit a step or use an old version, thus leading to an esoteric error and support request.
v2.0-beta3 improves the built-in diagnostics for common problems, so that they're identified more quickly and easily.
The data-storage for templates changed from
v2.0-beta3 introduces the "Mosaico Migration Assistant". If your system has any templates in the old data-store, the "System Status" will display a link to the migration assistant. Use the assistant to import templates from
In the CiviCRM menu, you'll find a new item "Administer => CiviMail => Mosaico Settings". This exposes options, such as "Layout" and "Custom Template Directory", which would otherwise remain hidden.
A base template defines the HTML blocks that are available for drag/drop in the Mosaico palette. Several designers have asked, "How do I customize the HTML for Mosaico mailings?"
The upstream Mosaico project provides a tutorial on writing templates. The steps are great for the template author... but how do you distribute and install these templates?
v2.0-beta3 allows site administrators to install templates in the "Custom Template Directory", and it allows developers to bundle templates into CiviCRM extensions. See also: API.md.
v2.0 represent different approaches to embedding Mosaico within CiviCRM:
v1.0, Mosaico is embedded into the Message Templates system. This design is flexible but has usability issues.
v2.0, Mosaico is embedded directly into CiviMail. This design is less flexible but more user-friendly.
If you want both the user-friendly CiviMail support and the flexibility of Message Templates, you can also install the Mosaico Message Template (
mosaicomsgtpl) extension. This reproduces the functionality of v1.0.
mosaicomsgtpl is experimental and unsupported. Why? Well, Message Templates are often copied into CKEditor for additional editing, but this doesn't work well with Mosaico content. Unsophisticated users find the experience difficult -- meaning that it's hard to support or train users. On the other hand, the technique is powerful and flexible, and we don't want to completely remove functionality that was available in
v1.0. For sophisticated folks -- or folks who already conquered the learning curve in
v1.0 -- the unsupported extension should provide feature-parity.
Although it's not visible to a user, the test processes are important -- they improve long-term viability for these extensions. Changes this month include:
The FlexMailer developer docs have been revamped. See https://docs.civicrm.org/flexmailer/en/latest/
The Mosaico docs have been slightly expanded with the addition of the developer-oriented API.md.
Additionally, you can browse the list of open issues, unconfirmed issues, and suggested enhancements in the issue queue.
v2.0-final, I'd like to:
v2.0-beta3to propagate and simmer -- and for people to feedback on November's comments/discussions.
Of course, there's a lot more that we would like to do -- such as addressing proposed enhancements and unreproduced issues. Some examples that would be great developments:
These would make the project better.
If you're in a position to investigate the known issues, to develop enhancements, or to fund enhancements, please get in touch on the issue tracker or on https://chat.civicrm.org under "dev-mosaico".