How To Send Email using Node.js

Websolutionstuff | Jul-28-2021 | Categories : Node.js

Hello Friends,

In this tutorial we will learn how to send email using node.js app. In this tutorial we will see send mail in node.js using nodemailer module. The nodemailer module makes it easy to send emails in node.js.

With the help of the nodemailer example, we will sending emails with basic HTML content. NodeMailer is very famous and easy to use for sending email in node.js

We can use Mailtrap or Gmail accounts. In this tutorial, we will learn how to send email using NodeMailer with both- Mailtrap and Gmail accounts, you can use whichever you want to.

Follow step-by-step to implement how to send email using nodemailer and mailtrap in node.js.


 Step 1 : Create Node Application

In this step create node application using below commands.

mkdir send_email_in_nodejs

cd send_email_in_nodejs

npm init



 Step 2 : Install Nodemailer

In this step install the NodeMailer module using below command

npm install nodemailer

After you have downloaded the Nodemailer module, you can include the module in any application:

const nodemailer = require('nodemailer');

Nodemailer’s API is simple and requires following points:

  1. Create a Transporter object
  2. Create a MailOptions Object
  3. Use the Transporter.sendMail method


 Step 3 : Setup Mailtrap Account

If you don’t have a Mailtrap account, follow these steps:

  • Create Mailtrap account
  • Create new inbox
  • Get your credentials

 If already have a Mailtrap account then integrate nodemailer in SMTP Setings like below screenshots.

Mailtrap Integration



 Step 4 : Sending Email with HTML Content

In this step we can send emai with HTML Content with configuration. So, make sure your configurarion before sending email.

var nodemailer = require('nodemailer');

var transporter = nodemailer.createTransport({
  host: "",
  port: 2525,
  auth: {
    user: "your_username",
    pass: "******"

var mailOptions = {
  from: '[email protected]',
  to: '[email protected]',
  subject: 'How To Send Email using Node.js - Websolutionstuff',
  html: '<h1>Welcome, Websolutionstuff</h1><p>This is test mail..!</p>'

transporter.sendMail(mailOptions, function(error, info){
  if (error) {
  } else {
    console.log('Email sent: ' + info.response);

And if you want send email with text then change in mailOptions in html like below code.

var mailOptions = {
  from: '[email protected]',
  to: '[email protected]',
  subject: 'How To Send Email using Node.js - Websolutionstuff',
  text: 'Welcome to Websolutionstuff!', // Plain text body


Step 5 : Run index.js file

run index.js using below code :

node index.js

After run this command you will get output like below screenshot.

How To Send Email using Node.js


You may also like: 

Recommended Post
Featured Post
How To Get env Variable In Controller Or Blade File
How To Get env Variable In Con...

In this tutorial, I will give you information on how to get the .env variable in the controller or file. Many times we n...

Read More


Jquery appendTo And prependTo Example
Jquery appendTo And prependTo...

In this article we will see jquery appendTo() and prependTo example. The appendTo() method inserts HTML elements at...

Read More


How to Get All Routes in Laravel 10
How to Get All Routes in Larav...

Hey there! This tutorial guides you through the process of retrieving a comprehensive list of all routes in a Larav...

Read More


Carbon Add Hours To Date In Laravel 9
Carbon Add Hours To Date In La...

In this article, we will see carbon add hours to date in laravel 9. Carbon provides addHour and addHours() function...

Read More