Le MJML, le langage qui vous sauve…

François Thibaud
2 min readMar 3, 2016

--

Stop les tableaux HTML pour créer une newsletter !

L’intégration d’emailing ou le cauchemar des intégrateurs connait peut-être actuellement un grand bouleversement.

Logo de Mailjet, créateur du MJML

Le MJML, langage créé par Mailjet et dont le moteur s’appuie sur React.Js, est destiné à faciliter la création et l’intégration d’emails responsive. Tout neuf dans le monde de l’emailing (février 2016), ce langage propose une syntaxe et des composants simplifiés (section, colonne, texte, image, bouton, liste, liens réseaux sociaux). Le code que vous aurez écrit en MJML sera ensuite automatiquement en HTML… ou plus exactement en tableaux HTML… ouais ils n’ont pas complètement disparus, c’est juste que vous ne les manipulez/voyez plus.

Les avantages

  • Plus de tableaux. Syntaxe simple et rapide à prendre en main, pas très éloignée du HTML et du CSS inline. Code beaucoup plus lisible (bye bye l’imbrication de tableaux à l’infini) et plus facilement maintenable.
  • Par défaut, la taille de l’email est la taille standard de 600px.
  • Par défaut, l’email est responsive. Tous les composants proposés ont déjà un comportement responsive.
  • La gestion multi-colonne est simple à mettre en place.
  • On peut mettre du HTML dans les composants (ce qui peut être pratique pour rajouter des liens, travailler la mise en forme d’un texte ou d’un partie du texte.)
  • Si les composants proposés ne suffisent pas, il est possible d’en créer soi-même.
  • Il y a des templates dispos (https://mjml.io/templates). Ca c’est au cas où parce que souvent, l’intégration d’un emailing se fait “from scratch” pour coller a la charte client et à la maquette.

Les inconvénients

  • Nouvelle syntaxe à maitriser
  • On ne peut pas faire de lien nativement sur un composant texte, ce qui peut être bloquant (on peut palier le souci en ajoutant un lien dans le composant texte mais ça n’est pas très pratique).
  • Pas la main sur le head de l’email, donc pas possibilité d’ajouter des styles supplémentaires ou des fonts personnalisées. La possibilité d’avoir la main sur tout ça devrait arriver dans les prochaines versions.
  • Il y a encore quelques soucis de rendu sur certains clients mails, notamment Outlook. Le rendu responsive, en revanche, est quasi parfait partout.

Conclusion

Ce langage vient tout juste d’être créé, et ne demande qu’à être amélioré (à la demande de leurs créateurs). Certains des inconvénients cités ci-dessus sont d’ailleurs en cours de résolutions/améliorations. Il est d’ailleurs possible d’ajouter des remarques ou demandes d’évolution directement sur le github du langage : https://github.com/mjmlio/mjml/issues

--

--