Enviar e-mails de Node.js, a maneira mais simples

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.

Enviar e-mails de Node.js - a maneira mais simples

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.