Socket
Book a DemoInstallSign in
Socket

@mmsb/nodemailer-wrapper

Package Overview
Dependencies
Maintainers
4
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@mmsb/nodemailer-wrapper

Wrapper for nodemailer with twig templates from a server

latest
npmnpm
Version
1.0.0
Version published
Weekly downloads
0
-100%
Maintainers
4
Weekly downloads
 
Created
Source

nodemailer-wrapper

Usage server side

1. Use mailerFactory to create the mailer

import { mailerFactory from 'nodemailer-wrapper'

const mailer = mailerFactory(
  mailerTransportSettings
  defaultMailerName
  defaultMailerAddress
  clientUrl
  mailTemplateDir
  mailerEnforceRecipient (optional)
)

mailerTransportSettings are smtp configuration for nodemailer : https://nodemailer.com/smtp/ Example :

nodemailer.createTransport({
  host: "smtp.example.com",
  port: 587,
  secure: false, // upgrade later with STARTTLS
  auth: {
    user: "username",
    pass: "password",
  },
});

defaultMailerName is the sender of the mail defaultMailerAddress is the email adress of the server (can be a fake one, but it will not be possible to answer to the emails) clientUrl is the url of your client website mailTemplateDir is the directory where your twig templates are stored (twig templates documentation : https://twig.symfony.com/doc/3.x/templates.html) mailEnforceRecipient is optional for dev purpose, if you give an email adress, all emails will be send to this address

2. Send emails

await Mailer.send(
  {
    to: user_email,
    subject: 'Any subject',
  }, //nodemailer.SendMailOptions
  'my_twig_template', //name of the twig template
  {
    variable_i_want_to_print: "something",
    other_variable: "something else",
  }, //variables that will be used in twig template
);

First argument is nodemailer.SendMailOptions, second one is the name of the twig template to use and third one are the variables used in this twig template. Example of twig template for this example :

{% block content %}
  <p>
    <strong>Dear user,</strong>
  </p>
  <br />

  Here's an email that prints {{variable_i_want_to_print}} and {{other_variable}}
  
  <em>This e-mail is automatically sent to you. Please do not reply to this e-mail address.</em>
{% endblock %}

FAQs

Package last updated on 16 Feb 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts