github.com/worthwhile/django-herald

A Django messaging library

Open this visualization on its own page →

Contributors

14

Lines of Code

412

From

2016-03-08

To

2020-08-27

About worthwhile/django-herald

Django Herald is a messaging library for Django that provides a class-based system for managing notifications across multiple channels. It uses a declaration and registry pattern similar to Django Admin, allowing developers to define notification classes that can be sent via email, SMS, Slack, and other transmission methods. The library includes features for browser-based message previewing, automatic history tracking of sent messages, and per-user notification preferences to allow users to disable specific notification types.

The library supports Django 3.2 and 4.x with Python 3.6 through 3.10. Core functionality includes customizable email options such as attachments, CC/BCC recipients, reply-to addresses, and headers. Django Herald can automatically convert HTML emails to plain text using the HTML2Text library and provides inline attachment support for embedding images directly in email content. The system maintains a complete history of sent notifications accessible through Django Admin with the ability to resend messages, and includes management commands for purging old notifications based on retention policies or custom date ranges.

The project is no longer actively maintained, though the code is MIT-licensed and available for forking. It includes integration with Twilio for SMS functionality, support for asynchronous email sending through django-celery-email, and a built-in integration for Django's password reset emails through the herald.contrib.auth module.

Share this video