async-mail

async mail with simple settings and django settings support.


Keywords
async_mail
License
MIT
Install
pip install async-mail==0.1b0

Documentation

async_mail

Documentation Status

By django inspired async mail package.

Supports simple-settings and django settings. These settings entries are expected to be present

EMAIL_BACKEND = 'mail.backends.smtp.EmailBackend'
EMAIL_SENDER = 'no-reply@nelen-schuurmans.nl'
EMAIL_HOST = '100-mail-d03.external-nens.local'

EMAIL_HOST_USER = ''
EMAIL_HOST_PASSWORD = ''
EMAIL_PORT = 25
EMAIL_USE_TLS = True
EMAIL_TIMEOUT = 5

Example

To send a single mail

from mail import Mail
from mail.models import Message

mail = Mail()
message = Message(
    sender="lars.claussen@mail.com",
    recipients=["lars.claussen@mail.com"],
    subject="one mail",
    message_body="one mail to rule them all"
)
await mail.send_message(message)

TODO

  • console backend
  • pydantic settings support
  • multiple SMTP clients instead of gather for true async execution
  • Free software: MIT license
  • Documentation: https://async-mail.readthedocs.io.

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.