Skip to main content

IMAP backend for Django mail package

Project description

Django IMAP backend

PyPI version

IMAP back-end for django.core.mail package, aimed for uploading messages to specif mailboxes, instead of sending it over SMTP (or other Django email backend). Useful for debugging without fancy services like mailtrap.io. Library is capable of uploading messages to multiple accounts at once (one email to multiple mailboxes or accounts).

Motivation

In last few months I worked on project where we have to send a lot of emails to different mailboxes. We used fake (and after migration real) e-mail addresses in our staging environment. It was hard to debug these messages without services like mailtrap (for which we just didn't want to pay, even it's a pretty cool product, client's budget is client's budged).

We came up with the idea of uploading ready-to-send emails to IMAP user instead of sending it.

Installation

# Using pip
pip install django-imap-backend

# Using poetry
peotry add django-imap-backend

# Using setup.py
python setup.py install

Configuration

Firstly, have to specify django_imap_backend.ImapBackend as your EMAIL_BACKEND in settings.py. Than you need to add configuration for your mailboxes in EMAIL_IMAP_SECRETS list. Your's setings.py should looks like this:

EMAIL_BACKEND = 'django_imap_backend.ImapBackend'
EMAIL_IMAP_SECRETS = [
    {
        'HOST': 'imap.example.com',
        'PORT': None,  # default 143 and for SSL 993
        'USER': 'artuhur.dent',
        'PASSWORD': 'TheQuestion42',
        'MAILBOX': 'my_project',  # Created if not exists
        'SSL': False  # Default
    }
]

Made with ❤️ and ☕️ by Jakub Dubec & BACKBONE s.r.o.

Changelog

0.2.3 : 2020-07-19

  • Fix: Version files update 🤦‍♀️ Once again...

0.2.2 : 2020-07-19

  • Fix: Version files update 🤦‍♀️

0.2.1 : 2020-07-19

  • Fix: Fallback to default Mailbox if configuration is not present

0.2.0 : 2020-07-10

  • Change: EMAIL_IMAP_MAILBOXES renamed to EMAIL_IMAP_SECRETS because of security (we don't want to show IMAP configuration in Django debug mode)
  • Change: sensitive_variables decoration in IMAP client

0.1.1 : 2020-07-05

Fix PyPi release (shit happens).

0.1.0 : 2020-07-05

Initial version SSL and support for multiple IMAP accounts.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-imap-backend-0.2.3.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

django_imap_backend-0.2.3-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file django-imap-backend-0.2.3.tar.gz.

File metadata

  • Download URL: django-imap-backend-0.2.3.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for django-imap-backend-0.2.3.tar.gz
Algorithm Hash digest
SHA256 e4aa2d57d7f0ee1ee85cff50533119abfcb108babc8bc7498d59461f12041175
MD5 a7d591a2a926e69fadd1d2b9e758e3f8
BLAKE2b-256 96bbc6ef3ff31011d7711ea796865564659b1e73b3f2b259cf282a6e384f824c

See more details on using hashes here.

File details

Details for the file django_imap_backend-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: django_imap_backend-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for django_imap_backend-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 98652a458189ff0f5876eb04d01b20d5e3003a24e84d4641f71bfa7a5f3864e6
MD5 027432a7ab6be49ca9458e90635f3387
BLAKE2b-256 e76a943d51374364afb235941353c3d335bd289195faaca73e1732697f27fcbc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page