nodemailer-express-handlebars

A plugin for nodemailer that uses express-handlebars view engine to generate emails

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
nodemailer-express-handlebars
84186.1.24 months ago10 years agoMinified + gzip package size for nodemailer-express-handlebars in KB

Readme

Express Handlebars plugin for Nodemailer
This plugin works with nodemailer 6.x. And uses the express-handlebars view engine to generate html emails.
Install from npm
npm install nodemailer-express-handlebars
Usage
//reference the plugin
const hbs = require('nodemailer-express-handlebars');
//attach the plugin to the nodemailer transporter
transporter.use('compile', hbs(options));
//send mail with options
const mail = {
   from: 'from@domain.com',
   to: 'to@domain.com',
   subject: 'Test',
   template: 'email',
   context: {
       name: 'Name'
   }
}
transporter.sendMail(mail);

You can send a multipart html and text email by setting the text_template option on a mail message.
const mail = {
   from: 'from@domain.com',
   to: 'to@domain.com',
   subject: 'Test',
   template: 'email',
   text_template: 'text',
   context: {
       name: 'Name'
   }
}

Plugin Options

The plugin expects the following options:
  • viewEngine (required) either the express-handlebars view engine instance or options for the view engine
  • viewPath (required) provides the path to the directory where your views are
  • extName the extension of the views to use (defaults to .handlebars)

Mail options

Set the template and values properties on the mail object before calling sendMail
  • template the name of the template file to use
  • context this will be passed to the view engine as the context as well as view engine options see here
License
MIT