| Introduction | Installation | Usage | Contribute |
Introduction
MJML is a markup language designed to reduce the pain of coding a responsive email. Its semantic syntax makes it easy and straightforward while its rich standard components library fastens your development time and lightens your email codebase. MJML’s open-source engine takes care of translating the MJML you wrote into responsive HTML.
Installation
Requirements
- Node >= 4.2.x
npm install -g mjml
Show me the code!
Command line
Compiles the file and outputs the result in
a.html
$> mjml -r input.mjml
Redirects the result to a file
$> mjml -r input.mjml -o output.html
Watches a file and compiles every time the file changes
$> mjml -w input.mjml -o output.html
Inside Node.js
import { mjml2html } from 'mjml'
/*
Compile an mjml string
*/
const htmlOutput = mjml2html(`
<mjml>
<mj-body>
<mj-container>
<mj-section>
<mj-column>
<mj-text>
Hello World!
</mj-text>
</mj-column>
</mj-section>
</mj-container>
</mj-body>
</mjml>
`)
/*
Print the responsive HTML generated
*/
console.log(htmlOutput)
Create your component
Issue the following in your terminal
$> mjml --init-component <name of your component>
# If your component cannot contain anything else than text:
$> mjml --init-component <name of you component> -e
# It means nothing inside it will be parsed by the mjml engine.
It will create a basic component template in a .js
file. Follow the instructions provided in the file
and read more about custom components in the documentation
Try it live
Get your hands dirty by trying the MJML online editor! Write awesome code on the left side and preview your email on the right. You can also get the rendered HTML directly from the online editor.
Contributors
Maxime | Robin | Loeck | Guillaume | Meriadec | Nicolas | Arnaud | HTeuMeuLeu | Emmanuel Payet | Matthieu |
Contribute
- Fork the repository
- Code an awesome feature (we are confident about that)
- Make your pull request
- Add your github profile here