1.0.2 • Published 7 years ago

emailer-js v1.0.2

Weekly downloads
1
License
ISC
Repository
github
Last release
7 years ago

Email Service API

npm package for sending email through multiple service provider

If one of the services goes down, it can quickly failover to a another provider without affecting customers

npm.io

Getting Started

Prerequisites

nodejs

Setup Environment Variables

Update the development environment with your email service API keys

e.g. SENDGRID_API_KEY on (https://app.sendgrid.com/settings/api_keys)

echo "
export SENDGRID_API_KEY='YOUR_SENDGRID_API_KEY'

export MAILGUN_API_KEY='YOUR_MAILGUN_API_KEY'
export MAILGUN_DOMAIN='YOUR_MAILGUN_DOMAIN'

export SES_ACCESS_KEY='YOUR_SES_ACCESS_KEY'
export SES_SECRET_KEY='YOUR_SES_SECRET_KEY'
" > emailer.env
echo "emailer.env" >> .gitignore
source ./emailer.env

Installing

npm install --save emailer-js

Running the tests

You need to set the NODE_ENV environment variable to 'test' and install devDependencies before you run test

npm test

Usage

'use strict';

let Emailer = require('./index');

let emailer = new Emailer();

let options = {
  fromEmail: 'from@example.com',
  toEmail: 'to@email.com',
  subject: 'Test Emailer',
  content: 'Hello World'
};

emailer.sendEmail(options).then((val) => {
 console.log('==== email sent sucessfully ====');
 console.log(val);
 // ...
,(err) => {
 console.log('==== failed ====');
 console.log(err);
 // ...
});

TODO

  • Improve Documentation
  • Add Mailchimp/Mandrill Support - On April 27, Mandrill became a paid MailChimp add-on. Keep receiving "Acceptable Use Violation Detected"...
  • Rate Limit of Sending Emails
  • Support More Complex Email - html body, cc, bcc, attachment, contentType, etc
  • More Test Cases

Authors

See also the list of contributors who participated in this project.

License