Makes sending emails easy and DRY — For Python 3.

skulltech skulltech Last update: Mar 23, 2024

drymail

Makes sending emails easy and DRY — For Python 3.

PyPI version

Drymail is a minimalist wrapper over Python’s existing smtplib and email libraries, designed to be friendly but unrestrictive. Here’s how you might send a simple email with an attachment using drymail.

from drymail import SMTPMailer, Message

client = SMTPMailer(host='smtp.email.com', user='johndoe', password='password', tls=True)
message = Message(subject='Congrats on the new job!', sender=('John Doe', '[email protected]'),
                  receivers=[('Jane Doe', '[email protected]'), '[email protected]'], text='When is the party? ;)')
message.attach(filename='/path/to/congrats.pdf', mimetype='application/pdf')

client.send(message)

Features

  • Supports creating email with HTML content, plaintext content, or both!
  • Supports mentioning contacts in the “John Doe" <[email protected]> format.
  • Support standard headers like CC, BCC, Reply-To and Authors.
  • Supports injecting custom headers.
  • Supports adding attachments.
  • And most importantly — the library being minimalist, it doesn’t restrict you in any way like some of the most fancier email frameworks do.

Installation

Install drymail by running —

$ pip3 install drymail

Documentation

Documentation is available at https://drymail.readthedocs.io/

Agenda

  • Test suite.
  • Restructure the Message class to handle dynamic prepare.

Contribute

All kinds of contribution are welcome.

License

This project is licensed under the MIT license.

Subscribe to our newsletter