django-naomi
Email backend for Django. Preview your email in browser instead of sending it.
What it is and what it does
django-naomi replaces Django's default email backend to capture outgoing emails and serve them as viewable messages in your web browser instead of sending them through SMTP. This is designed for development environments where you want to inspect email content without a working mail server or to debug message formatting. Emails are stored as files in a configurable temporary directory, and attachments are displayed as links.
The package requires only Django and a writable directory on disk; it has no external runtime dependencies. Setup involves adding 'naomi' to INSTALLED_APPS, setting EMAIL_BACKEND to the NaomiBackend class, and specifying an EMAIL_FILE_PATH directory. Once configured, every email your Django application sends is intercepted and made available for inspection in the browser instead of being transmitted.
Use it for:
- Debug email formatting and content during local development without access to a working SMTP server.
- Preview transactional emails (password resets, confirmations, notifications) before they reach users.
- Inspect email attachments and verify they are generated correctly without sending test messages.
- Develop and test email-heavy features in isolated environments where external mail services are unavailable.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
django-naomi is a Django email backend that intercepts outgoing emails and displays them in your web browser instead of sending them via SMTP, useful for development and debugging.
No. The package is abandoned (last release 2015-08-15, last commit 2019-12-12) and targets obsolete Python versions (2.6–3.4). Compatibility with modern Django and Python is unverified. For current projects, use actively maintained alternatives.
Install
django-naomi on PyPI
pip
pip install django-naomiuv
uv add django-naomipoetry
poetry add django-naomiInstalling django-naomi
Before you install
Installation is straightforward with no runtime dependencies, but the package is abandoned—last release was 2015-08-15 and last commit 2019-12-12. It targets Python 2.6–3.4, versions now obsolete.
License in practice
MIT license is permissive and poses no restrictions on use, modification, or distribution.
Quickstart
pip install django-naomi
Add to Django settings:
INSTALLED_APPS += ('naomi',)
EMAIL_BACKEND = "naomi.mail.backends.naomi.NaomiBackend"
EMAIL_FILE_PATH = "/path/to/writable/dir"
EMAIL_FILE_PATH directory must be writable; compatibility with modern Django and Python versions is unverified.
Verify before relying
- Compatibility with modern Django versions (3.x, 4.x, 5.x) and current Python releases.
- Whether the browser preview interface works with current web standards and browsers.
- Current maintainer status and whether pull requests or issues are being reviewed.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 4,017 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 115,421/month — #12,250 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_naomi-0.8-py2.py3-none-any.whl
Keywords: django, email
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
dj-email-urlConfigures Django email backends from…
permissive · top 15,000 on PyPI
django-celery-emailRoutes Django email sending through Celery task…
permissive · top 15,000 on PyPI
django-sesA Django email backend that routes outgoing…
permissive · top 5,000 on PyPI
django-post_officeDjango Post Office queues and sends emails…
permissive · top 15,000 on PyPI
django-sendgrid-v5Provides a Django email backend that sends…
permissive · top 15,000 on PyPI
django-multi-email-fieldProvides Django model and form fields to store…
unclear · top 15,000 on PyPI
django-anymailSends and receives email in Django through…
permissive · top 5,000 on PyPI
yagmailSimplifies sending emails via Gmail or any SMTP…
permissive · top 15,000 on PyPI
email-toWraps Python's standard email modules to…
permissive · top 15,000 on PyPI
django-silkSilk intercepts and profiles HTTP requests,…
permissive · top 5,000 on PyPI