Biblioteca gomail para envio de Email em Go
gomail é uma biblioteca poderosa e fácil de usar em Go (Golang) para envio de e-mail. Ela suporta e-mails em HTML, anexos, múltiplos destinatários, autenticação SMTP e criptografia TLS/SSL. A biblioteca é ideal para desenvolvedores que precisam integrar notificações por e-mail, confirmações de registro ou mailings de marketing em suas aplicações Go.
Por que usar gomail?
A biblioteca padrão do Go (net/smtp) fornece funcionalidades básicas para envio de e-mails, mas para tarefas reais muitas vezes faltam recursos: é difícil trabalhar com templates HTML, anexos, múltiplos destinatários e requisitos modernos de segurança (STARTTLS, OAuth2). A gomail resolve esses problemas, oferecendo uma API limpa e configuração flexível.
Instalação
Para instalar a gomail, execute o comando:
go get github.com/go-mail/mail/v2Funcionalidades principais
- Envio via SMTP com suporte a TLS/SSL
- Suporte a e-mails HTML e texto
- Anexos de arquivos e imagens incorporadas
- Múltiplos destinatários (To, Cc, Bcc)
- Cabeçalhos e codificações personalizáveis
- Suporte a OAuth2 (por exemplo, API do Gmail)
Exemplo de código em Go
Abaixo está um exemplo simples de envio de e-mail HTML através do servidor SMTP do Gmail:
package main
import (\t"crypto/tls"\t"fmt"\t"log"
\tgomail "github.com/go-mail/mail/v2")
func main() {\td := gomail.NewDialer("smtp.gmail.com", 587, "your_email@gmail.com", "your_app_password")\td.TLSConfig = &tls.Config{InsecureSkipVerify: false}
\tm := gomail.NewMessage()\tm.SetHeader("From", "your_email@gmail.com")\tm.SetHeader("To", "recipient@example.com")\tm.SetHeader("Subject", "Olá do Go!")\tm.SetBody("text/html", "<h1>Olá!</h1><p>Este é um e-mail de teste.</p>")\tm.Attach("/path/to/file.pdf")
\tif err := d.DialAndSend(m); err != nil {\t\tlog.Fatal(err)\t}\tfmt.Println("E-mail enviado com sucesso!")}Quando usar gomail
- Quando precisar enviar e-mails transacionais (confirmações, redefinição de senha)
- Para criar um serviço de mailings em Go
- Quando houver necessidade de anexos ou formatação HTML complexa
- Em aplicações corporativas com requisitos de criptografia
gomail é uma escolha confiável para a maioria das tarefas de envio de Email. Graças ao suporte ativo da comunidade e atualizações regulares, a biblioteca permanece relevante mesmo para projetos de alta carga.
Também na biblioteca
Validação de dados em Swift: biblioteca Validator
Injeção de Dependência (Dependency Injection) em C++: contêineres e prática
Agendador de tarefas em PHP: biblioteca cron‑expression para agendamento flexível
Aprendizado de Máquina em C++: Visão Geral de Bibliotecas e Ferramentas