Templated email
Easy development/support and using email templates.
Supports for other template engines
Base usage
var Mailer = ;var TemplateProvider = ; var mailer = host: 'smtp.example.com' secure: true port: 465 auth: user: 'login' pass: 'AwesomePassword' ; mailer ;
Setting helpers
var options = helpers: Mathround // helper with name `round`; var mailer = options host: 'smtp.example.com' secure: true port: 465 auth: user: 'login' pass: 'AwesomePassword' ;
Function name is name of helper. You can define by named function. If you use ECMAScript 5 or older version you can use some polyfill (or hook) for Function.name
property or upgrade nodejs version :)
Setting templates
You can redefine function (setHTMLTemplateGetter
and setTextTemplateGetter
) for determine location requested template. If function for text template
is not defined it will be taken stringified html template
(without tags).
By default template path is relative by project "template".
Usage example:
/*Structure of your paths for templates: / └─ home └─ user └─ templates └─ ${name} └─ ${lang}.html.hbs */ var templatePath = '/home/user/templates';var options = { return `//.html.hbs`; }; var mailer = options host: 'smtp.example.com' secure: true port: 465 auth: user: 'login' pass: 'AwesomePassword' ;
Command for test
node index.test.js --host=smtp.example.com --login=me@example.com --password=AwesomePassword --to=test@example.com --from=me@example.com# or short version node index.test.js -H smtp.example.com -L me@example.com -P AwesomePassword -T test@example.com -F me@example.com