A new beginning for CiviMail

2016-02-24 16:24
Written by

Well, ok, not quite but I’m hoping that anyone who’s used CiviMail and message templates in anger will relate to the need for change and how CiviMail can become an asset rather than the elephant in the room.

So let’s start at the beginning, Beatrice donates time to ACME Incorporated Chairty Arm also known as “Cheese For All”. She’s a marketing person and would really like to start putting together some engaging email content for Cheese For All, who made the right decision with both Beatrice and CiviCRM. She’s used Mailchimp in the past and has an expectation of what a mailing tool should allow her to do, so she walks in on Monday morning, ready to make a difference to Cheese for All, armed with her hot breakfast and a chocolate bar for the tough times. She quickly gets to grips with groups, the concept of mailing and gets stuck in, encouraged by the word “template” that's thrown around in CiviCRM. After digging around for 30 minutes, she soon realises that a template is as far removed from the “template builder” she’d have used in Mailchimp or any other mass mailing tool, and in fact she probably needs a degree in CSS, HTML and Responsive theming to ever get it right. Soon she’s out of chocolate, frustrated and pulls the trigger on the mailchimp civicrm extension. Suddenly she’s feeling a lot better, able to send out the emails she needs and everything's handled beautifully in Mailchimp. CiviMail loses another user.

Sound Familiar? Maybe its taken more than a day's investment but I’m sure all the users of CiviMail have faced the exact same issues, below are the key ones that have been identified both by ourselves and the community at large.

  • The embedded HTML editor in CiviCRM is affected by the styling being applied to CiviCRM, so when you send the content that started to look like what you wanted, actually it looks different on the recipient's device. This is very annoying and almost impossible to fix without preparing your content outside of CiviCRM for testing and the pasting back in when ready.
  • You’ve spent sums of money having templates designed for layout but the user who actually edits the content can end up breaking it very easily. For example how many times have you tried to get the paragraph to appear in the right place, using the backspace to remove whitespace, only to accidently delete a column or row and throw out the entire newsletter? Irritating and very difficult to get right.
  • Placing images into the templates is like trying to fix a square block into a round hole. Yes, it can be done, but you’ll probably need to change the shape of the square block to match the hole before you get it right!
  • Templates are pretty rigid. Once one’s been setup you can change the text and images but its very difficult for an end user to add more sections to it or move things around.

These are the key ones, there are I’m sure 100s more but, even for our use of CiviCRM, we struggle with these.

Along comes Mosaico, what’s mosaico?

###Mosaico is a Template-Driven Email Builder The features and the complexity of the editor (and the flexibility given to the user) are based on the template itself and not hardcoded in the editor interface. This means that potentially anyone could convert his template in order to work with Mosaico.

Great news, it’s open source and it does exactly what we want it to do and it should help fix a bunch of the issues we have with “templates” within CiviCRM. After much drilling, polishing, cutting and gluing back together we managed to get Mosaico working within CiviCRM and our Alpha extension can be found here in our Git Repository.

Please take a look at this video, which demonstrates the extension in action, hopefully it’ll answer some of the questions you have an help determine if the approach we’re taking is the right one.

Filed under
Click thumbs up if you thought this blog post was useful (login to vote or to comment)


Congratulations guys. I think this is a great breakthrough for CiviCRM in terms of its mailing capabilities. Does it automatically handle inlining the css for cross mailing compatibility?

Seems to do a pretty good job, the litmus test you can see at the end of the video renders all mailing clients pretty much identifcally so styling seems to be getting handled correctly.

This is fantastic! Can't wait to download it as an extension and make a lot of people very happy (including me!).

Emma from Agileware

Hey Parvez, Fantastic job on getting this done and getting it out there. Looking forward to watching this extension develop.

This looks great! Thank you for all the hard work - and working so late! Our marketing team will be very happy to hear this is on the horizon. Will definitely install and have a play.

Awesome! Does it work already for ab testing?

Congrats! Looks great and am sure many of my clients will be looking forward to using it in the near future. 

Thanks very much for the hard work and the clear video. 

We've now released Alpha2 to the CiviCRM Extensions directory. Please take a look and feedback to the github issues queue with any comments or feedback. We'll be managing the issue queue from there. 

The new release addresses the CMS agnostic issues that some Wordpress users faced when trying out the extension as well as a few other minor fixes to the mosaico integration.

I added a redirect since Google was still directing to blogs/parvez/a-new-beginning-for-civimail…

Parvez - we have a use case under discussion where most users should only be able to create a draft civi mailing, and a restricted set of users would then be allowed to actually send.

Any thoughts whether adding a permission to the Mosaico integration might be a short cut to achieving the above?

Anonymous (not verified)
2016-03-14 - 03:08

<p>Hi Pravez I have followed your blog, the github repo description and the vidoe u provided and to me it is such a wonderful idea</p>
<p>. I am interested in the integrattion of mosaico into CiviMail this summer as a Gsoc project. There are probalby many questions i would wish to ask and i have been to the community forum no one to answer these, my email is agboreugene@gmail.com. i will be glad if we can accomplish this task together. thanks</p>

Update: Alpha3 has been released that includes:

  • Detect any possible installation issues on templates screen - civicrm/mosaico/index?reset=1. Checks are done for imagick, fileinfo, writeable directories, resource url.
  • Checks can also be forced with runcheck=1 argument e.g civicrm/mosaico/index?reset=1&runcheck=1.
  • Use civi upload directories for uploading images.
  • Auto create static directory on extension installation.
  • Make templates screen look more like civi screens.


Are you being particularly cautious in your version numbers? Why is this still an alpha6 release, not even a beta? Does this mean that it is entirely unsuitable for production use, is not feature complete, ...? 

What version number, and approximately when, do you think this will be ready for production use? Q4 2016? Q1 2017?

Yes, being very cautious! We've had a few implementers testing and putting it through its paces including a few of our clients. We plan to release beta 1 in the next 2 weeks with a few more minor tweaks. The main hurdle is the installation requirements so we've put a lot around checking that in the extension setup. It can be used in production without affecting too much, the last tweaks we're making is to not disable CKEditor in mass mailing when the extension is enabled, a feature that came out from users.

We haven't had anyone fund the extension yet so if you have any clients who would be willing to invest that would help move things along a bit quicker.

Just an update: Beta was announced in CiviCon London 2016. And is ready for production use - https://civicrm.org/blog/deepaksrivastava/email-template-builder-civimosaico-is-now-beta