django-templated-email
A Django oriented templated / transaction email abstraction
What it is and what it does
django-templated-email is a Django library that abstracts email sending by rendering emails from template files, similar to how Django's render_to_response works for HTTP responses. It lets you define email structure (subject, plain text, HTML) in template blocks, pass context variables, and send with a single function call. The library handles template inheritance, recipient management (to, cc, bcc), custom headers, and optional inline images.
It integrates with Django's email backend system and can work with transactional email providers without changing your application code. The package is stable and production-ready, supporting Python 3.9, 3.10, 3.11, 3.12, and 3.13 with Django 4.2, 5.0, and 5.1.
Use it for:
- Send welcome or password-reset emails using Django templates with context from your user model.
- Generate multi-part emails (plain text + HTML) from a single template definition with automatic fallback.
- Integrate transactional email providers while keeping email logic in templates.
- Embed inline images in HTML emails using the InlineImage class for logos or promotional graphics.
- Manage email templates in version control alongside your Django app code for easier review and testing.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Sends templated emails in Django applications using template inheritance, with support for plain text and HTML variants, cc/bcc recipients, and inline images.
Yes, if you are building a Django application that sends templated emails. The library is stable, has no known vulnerabilities, and low install friction. The aging maintenance status (358 days since last release) is a minor concern but not a blocker—the repository is not archived and remains functional. Use it for standard transactional email workflows.
Install
django-templated-email on PyPI
pip
pip install django-templated-emailuv
uv add django-templated-emailpoetry
poetry add django-templated-emailInstalling django-templated-email
Before you install
Low friction: pure Python wheel with a single runtime dependency (django-render-block). Maintenance status is aging—last release was 358 days ago, though the repository remains active with recent commits and no archived status.
License in practice
MIT license permits unrestricted use, modification, and distribution in both open-source and proprietary projects with minimal obligations.
Quickstart
pip install django-templated-email
from templated_email import send_templated_mail
send_templated_mail(
template_name='welcome',
from_email='from@example.com',
recipient_list=['to@example.com'],
context={'username': 'john', 'full_name': 'John Doe'}
)
Requires Django 4.2, 5.0, or 5.1 and Python 3.9, 3.10, 3.11, 3.12, or 3.13 to be installed.
Verify before relying
- Whether django-render-block itself has active maintenance or known issues that could affect stability.
- Performance characteristics when sending large volumes of templated emails.
- Compatibility details with specific transactional email service provider integrations.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — django-render-block |
| Maintenance | aging — 358 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 118,020/month — #12,139 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_templated_email-3.1.1-py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
django-anymailSends and receives email in Django through…
permissive · top 5,000 on PyPI
django-templated-mailSends Django emails using template files…
permissive · top 15,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
emailsBuild and send HTML and plain-text emails with…
permissive · top 15,000 on PyPI
postmarkerPostmarker is a Python client library for the…
permissive · top 5,000 on PyPI
redmailRedmail simplifies sending emails with Python…
permissive · top 15,000 on PyPI
mailtrapOfficial Python client for Mailtrap's email…
permissive · top 15,000 on PyPI
django-sesA Django email backend that routes outgoing…
permissive · top 5,000 on PyPI
email-toWraps Python's standard email modules to…
permissive · top 15,000 on PyPI