Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

send emails from node.js to a smtp server, simple as cake

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 lib
Octocat-spinner-32 templates
Octocat-spinner-32 vendor
Octocat-spinner-32 Changelog
Octocat-spinner-32 MIT-LICENSE
Octocat-spinner-32 Readme.md
Octocat-spinner-32 demo-template.js
Octocat-spinner-32 demo.js
Octocat-spinner-32 logo.png
Octocat-spinner-32 package.json
Octocat-spinner-32 stubSMTP
Readme.md

v0.6.4


send emails from node.js to your smtp server, simple as cake.

Installing npm (node package manager)

 curl http://npmjs.org/install.sh | sh

Installing say.js

 npm install mailer

FEATURES

  • super simple api
  • emails are blasted out asynchronously
  • uses connection pooling per SMTP server
  • super simple built in templates using Mustache.js

REQUIRES

  • SMTP Server

USAGE

  var email = require("../lib/node_mailer");

  for(var i = 0; i < 10; i++){

    email.send({
      host : "localhost",              // smtp server hostname
      port : "25",                     // smtp server port
      ssl: true,                        // for SSL support - REQUIRES NODE v0.3.x OR HIGHER
      domain : "localhost",            // domain used by client to identify itself to server
      to : "marak.squires@gmail.com",
      from : "obama@whitehouse.gov",
      subject : "node_mailer test email",
      body: "Hello! This is a test of the node_mailer.",
      authentication : "login",        // auth login is supported; anything else is no auth
      username : "my_username",        // username
      password : "my_password"         // password
    },
    function(err, result){
      if(err){ console.log(err); }
    });
  }

USING SSL

This fork supports SSL connections. To use it, add an option ssl: true. See usage above.

USING TEMPLATES

create a simple template

/templates/sample.txt

  Hello {{username}}, 

  This is a sample template of the node mailer.

  It uses mustache templating to do basic search and replaces. 

  The {{color}} {{animal}} {{adverb}} ran over the {{noun}}.

then send the mail using some simple JSON based Mustache replacement.

  var email = require("../lib/node_mailer");

  for(var i = 0; i < 10; i++){

    email.send({
      host : "localhost",               // smtp server hostname
      port : "25",                     // smtp server port
      domain : "localhost",             // domain used by client to identify itself to server
      to : "marak.squires@gmail.com",
      from : "obama@whitehouse.gov",
      subject : "node_mailer test email",
      template : "../templates/sample.txt",   // path to template name
      data : {
        "username": "Billy Bob",
        "color": function(){
          var arr = ["purple", "red", "green", "yello"];
          return arr[Math.floor(Math.random()*3)];
        },
        "animal": "monkey",
        "adverb": "quickly",
        "noun": "hot lava"
      },

      authentication : "login",        // auth login is supported; anything else is no auth
      username : "my_username",        // username
      password : "my_password"         // password
    },
    function(err, result){
      if(err){ console.log(err); }
    });
  }

Authors

Marak Squires, Elijah Insua, Fedor Indutny, Bradley Meck

Something went wrong with that request. Please try again.