Skip to content

Latest commit

 

History

History
98 lines (70 loc) · 3.06 KB

README.md

File metadata and controls

98 lines (70 loc) · 3.06 KB

emeeuw

Version npmBuild StatusDependenciesCoverage Status

Installation

The module is released in the public npm registry and can be installed using:

npm install --save emeeuw

Usage

In all examples we assume that you have a valid mandrill account and API key as we're a wrapper around their API (but we are more then happy to add more email providers through pull requests).

'use strict';

var Emeeuw = require('emeeuw')
  , emeeuw = new Emeeuw(process.env.MANDRILL_API, { /* options */ });

As you can see in the snippet above we accept 2 arguments:

  1. The API key for the Mandrill API.
  2. An optional object which allows you to specify some messaging defaults:
    • open: Track open of emails, defaults to true.
    • click: Track clicks in emails, defaults to true.
    • subject: Default subject of the emails.
    • from: Default from email address.
    • to: Default to address.

Emeeuw.from

Add a new directory of template sources. It accepts one argument and it should an absolute path to a directory or a filename which points a markdown file.

emeeuw.from('/my/email/directory')
      .from('/path/to/specific/test.md');

The method will walk through the directories and files searching for markdown sources that have a .md extension. If we find markdown files in the first level of the directory we assume that the filename is the name of the template. If we find another directory we assume that the folder name is the name of the template.

For every markdown we assume that there is a file with exactly the same in the folder but with a different extension. The extension can be an extension that is accepted and parsed by Temper. So if you have a foobar.md there should also be foobar.html (or any other extension).

When we are sending the emails we will use the contents of the markdown file as plain/text body of the email. And the rendered result of the template file will be used as HTML body.

Emeeuw.send

After adding template files to your emeeuw instance we can start sending emails. This method requires 3 arguments:

  1. The name of the template you want send
  2. Options to send the message.
  3. Completion callback.
emeeuw.send('example', {
  to: '[email protected]',
  subject: 'My first mass mailing'
}, function (err, resp) {

});

Emeeuw.destroy

Completely destroy the instance so it will release memory of the things it created internally.

emeeuw.destroy();

License

MIT