Skip to main content

Django app for managing multiple mass-mailing lists with both plaintext as well as HTML templates (and pluggable WYSIWYG editors for messages), images and a smart queueing system all right from the admin interface.

Project description

Newsletter application for the Django web framework.

What is it?

Django app for managing multiple mass-mailing lists with both plaintext as well as HTML templates with rich text widget integration, images and a smart queueing system all right from the admin interface.


We are currently using this package in several large to medium scale production environments, but it should be considered a permanent work in progress.


Extended documentation is available on Read the Docs.


All strings have been translated to Dutch, German, French, Farsi, Russian, English, Arabic, Icelandic, Czech and Italian with more languages on their way.

Contributions to translations are welcome through Transifex. Strings will be included as soon as near-full coverage is reached.


Currently, django-newsletter is being tested to run on Python 2.6, 2.7 and the latest Django 1.4 and 1.5 releases. Apart from tests it should be compatible with Python 2.5 as well.


Please refer to requirements.txt for an updated list of required packages.


Fairly extensive tests are available for internal frameworks, web (un)subscription and mail sending. Sending a newsletter to large groups of recipients (+15k) has been confirmed to work in multiple production environments. Tests for pull req’s and the master branch are automatically run through Travis CI.


If you find any bugs or have feature request for django-newsletter, don’t hesitate to open up an issue on GitHub (but please make sure your issue hasn’t been noticed before, finding duplicates is a waste of time). When modifying or adding features to django-newsletter in a fork, be sure to let me know what you’re building and how you’re building it. That way we can coordinate whether, when and how it will end up in the main fork and (eventually) an official release.

In general: thanks for the support, feedback, patches and code that’s been flowing in over the years! Django has a truly great community. <3


This application is released under the GNU Affero General Public License version 3.


0.5.2 (1-5-2014)

  • Additional locale support: Arabic, Czech, French and Islandic
  • Run tests on Django 1.7 beta and Python 3.3 (but allow failure)

0.5.1 (21-11-2013)

  • Added Italian translation, thanks to azanibellato.
  • Support for pluggable/custom user models (#101).
  • Proper Sphinx documentation with autodoc on Read the Docs (#90).
  • Compatibility with Django 1.6 thanks to @jnss (#97).
  • Include default message templates in package (#95).
  • Fix database to template file migration for non-ASCII characters (#94).
  • Fix small issues with vCard imports (mainly mimetype-related).

0.5 (03-10-2013)

  • Added proxy for app-specific settings.
  • Optional skipping of email confirmation in views (CONFIRM_EMAIL_<ACTION>).
  • Russian translation (contributed by ak3n).
  • Added explicit HTML toogle to Newsletter model.
  • Fix JavaScript submit link on “Add submission”, ported to use jQuery.
  • Replacement of remaining function based views with class based equivalents.
  • Move message templates from database to files.

0.4.1 (15-04-2013)

  • Started keeping a decent history file. (Finally…)
  • Support Django 1.5; make use of class based generic views
  • Drop Django 1.3 and Python 2.5 support.
  • 100% test coverage for views
  • Farsi translations (contributed by rohamn)
  • French translations (contributed by smalter)
  • Admin actions for subscribing/unsubscribing (contributed by jnns)
  • Introduced django-webtest for some tests
  • Exempt previews from XFrame protection (fixes #54)

0.4 (20-11-2012)

  • Major code cleanup; PEP8, imports, restructuring, removal of legacy code
  • Improved testing throgh Travis and better test coverage
  • South migrations
  • Added German translation (contributed by jnns)
  • WYSIWYG editor is now optional and pluggable, Imperavi and TinyMCE supported
  • Timezone-aware date-times when Django 1.4 is used
  • Ue of Django 1.3’s messages framework
  • Many small bugfixes (see GitHub issues)
  • Drop support for Django 1.2
  • Automatic detection of charset, encoding and dialect for CSV import
  • Much cleaner log messages with proper message substitution
  • Use Django’s staticfiles contrib for static assets in admin interface
  • Use surlex for more readable URL templates
  • Use sorl-thumbnail for article images and default templates

Project details

Release history Release notifications

History Node


History Node


History Node


History Node


This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
django_newsletter-0.5.2-py2.py3-none-any.whl (270.1 kB) Copy SHA256 hash SHA256 Wheel 2.7 May 1, 2014
django-newsletter-0.5.2.tar.gz (282.7 kB) Copy SHA256 hash SHA256 Source None May 1, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page