Socket
Socket
Sign inDemoInstall

nodemailer-mjml-mustache

Package Overview
Dependencies
132
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    nodemailer-mjml-mustache

A plugin for nodemailer that uses mjml and mustache view engine to generate emails.


Version published
Weekly downloads
266
decreased by-49.72%
Maintainers
1
Install size
11.6 MB
Created
Weekly downloads
 

Readme

Source

nodemailer-mjml-mustache

npm version

A plugin for nodemailer that uses mjml and mustache view engine to generate emails.

Installation

npm install nodemailer-mjml-mustache --save

Plugin Options

  • viewPath (required) provides the path to the directory where your views are

Mail Options

  • template the name of the template file to use without the extension
  • context this will be passed to the view engine as the context data to render the variables with.
// example
context: {
  name: `Bob Ross`,
  url: `https://mjml.io/try-it-live`,
}
<!-- MJML Example-->
<mj-text>Hello {{name}}, <a href="{{url}}">Click here</a></mj-text>

Example Usage

let nodemailer = require(`nodemailer`)
let mjml = require(`../lib`)
let htmlToText = require(`nodemailer-html-to-text`).htmlToText

// Setup local version of mailcatcher
let transporter = nodemailer.createTransport({
  host: '127.0.0.1',
  port: 1025,
})

// Compile the mjml template to html with parsing the mustache variables
transporter.use(`compile`, mjml({
	viewPath: `${__dirname}/views`
}))

// Convert the html to text to populate the text email part
transporter.use(`compile`, htmlToText())

// Setup test send options
const options = {
  context: {
    name: `Bob Ross`,
    url: `https://mjml.io/try-it-live`,
  },
  from: `from@email.com`,
  to: `to@email.com`,
  subject: `Verify your email address`,
  template: `example`,
}
console.log("Sending options", options)

// Send the email
new Promise((resolve, reject) => {
  transporter.sendMail(options, function(error, info){
      if (error) {
        return reject(error)
      }
      resolve(info)
  })
})

Keywords

FAQs

Last updated on 30 May 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc