Existem muitos serviços excelentes relacionados a e-mail na nuvem (como SendGrid ou MailGun, para citar apenas dois) e quase todos eles têm módulos Node.js e APIs para trabalhar.
No entanto, às vezes mais simples é melhor, e se você tem um webapp simples / pequeno e precisa de uma maneira direta de enviar apenas alguns e-mails, há uma maneira fácil de fazer isso com o Nodemailer e o Gmail, com apenas algumas linhas de código e quase nenhuma configuração em absoluto:
smtp = require('nodemailer').createTransport 'SMTP',
service: 'Gmail'
auth:
user: process.env.GMAIL_USER
pass: process.env.GMAIL_PASS
...
await smtp.sendMail
from: "The Awesome Company <#{process.env.COMPANY_EMAIL}>"
to: "Recipient name <#{user.email}>"
subject: "Thank you for your feedback, #{user.name}!"
html: """
<p>Your feedback is very important to us!</p>
<p>
Sincerely,<br />
The Awesome Team
</p>
"""
, defer err, message
O exemplo de código acima assume que você está usando IcedCoffeeScript para otimizar o fluxo de controle assíncrono , mas é claro, isso pode ser feito em CoffeeScript ou também em Javascript simples.