node-emailerdeprecated

Module for Email send with pug render (optional)

Usage no npm install needed!

<script type="module">
  import nodeEmailer from 'https://cdn.skypack.dev/node-emailer';
</script>

README

node-emailer

Package Quality

Package Quality npm David

Module for Email send with pug render (optional)

Install

$ npm install --save node-emailer

Usage:

const app = require( 'express' ); 
// Or if you are using keystonejs:
// const app = require( 'keystone' );

app.set( 'smtp_user', process.env.SMTP_USER );
app.set( 'smtp_password', process.env.SMTP_PASSWORD );
app.set( 'smtp_host', process.env.SMTP_HOST );
app.set( 'smtp_port', process.env.SMTP_PORT );
app.set( 'smtp_ssl', true );

// some useful code...

const nodeEmailer = require( 'node-emailer' )( app ) ;

function sendWithRender() {
    const templateName = 'test.pug';
    const templateDir = 'email-templates';
    const message = {
        from: app.get( 'smtp_user' ),
        to: 'user@example.ru',
        subject: 'Test subject!'
    };

    const locals = {
        href: 'http://127.0.0.1',
        link: 'Go to home'
    };

    nodeEmailer
        .setOption( 'emailTemplateDir', templateDir )
        .connect( {
            user: app.get( 'smtp_user' )
        } )
        .render( message, templateName, locals )
        .sendMail( ( err, msg ) => console.log( err, msg ) );
}

function sendWithOutRender() {
    const message = {
        from: app.get( 'smtp_user' ),
        to: 'user@example.ru',
        subject: 'Test subject!',
        text: 'Go to home: http://127.0.0.1'
    };

    nodeEmailer
        .connect( {
            user: app.get( 'smtp_user' )
        } )
        .render( message )
        .sendMail( ( err, msg ) => console.log( err, msg ) );
}

sendWithRender();
sendWithOutRender();