hof-emailer is built into hof v19 🎆
An emailer service for HOF applications.
$ npm install hof-emailer --save
// first create an emailer instance
const Emailer = require('hof-emailer');
const emailer = new Emailer({
from: '[email protected]',
transport: 'smtp',
transportOptions: {
host: 'my.smtp.host',
port: 25
}
});
// then you can use your emailer to send emails
const to = '[email protected]';
const body = 'This is the email body';
const subject = 'Important email!'
emailer.send(to, body, subject)
.then(() => {
console.log(`Email sent to ${to}!`);
});
from
: : Address to send emails from. Required.transport
: : Select what mechanism to use to send emails. Defaults: 'smtp'.transportOptions
: : Set the options for the chosen transport, as defined below. Required.layout
: : Optional path to use a custom layout for email content.host
: Address of the mailserver. Required.port
<String|Number>: Port of the mailserver. Required.ignoreTLS
: Defaults to false.secure
: Defaults to true.auth.user
: Mailserver authorisation username.auth.pass
: Mailserver authorisation password.accessKeyId
: AWS accessKeyId. Required.secretAccessKey
: AWS accessKeyId. Required.sessionToken
region
. Defaults to 'eu-west-1'.httpOptions
rateLimit
maxConnections
dir
: The location to save html to. Default:./.emails
. This directory will be created if it does not exist.open
: If set to true, will automatically open the created html file in a browser.
The following transport options are available:
A development option to write the html content of the email to a file for inspection.
transport: 'debug'
transport: 'debug'
transportOptions: {
dir: './emails',
open: true
}
Disables sending email. No options are required.