GNU Mailman 3 and Django

Florian Fuchs

Audience level:
Intermediate

Description

GNU Mailman, the popular mailing list manager has undergone a major redesign. One of the changes is the separation of the web user interfaces from the core engine and the use of Django for list management and archiving.

This talk shows how these interfaces use Mailman's internal APIs, how they can be integrated into existing Django projects and how they can be customized and extended.

Abstract

The GNU Mailman mailing list manager has been around for a long time. Its newest Version (v3 - currently in beta) has introduced a lot of significant changes, putting a special emphasis on the separation of the the various user interfaces from the core engine.

This talk will introduce you to the general architecture of the Mailman 3 system and its internal APIs from the perspective of a web developer. It will also show you the two main Django applications Mailman 3 uses for list management and archiving, and how they use these APIs:

Postorius: A Django app for list management

  • How it accesses mailman's core engine via HTTP/REST
  • mailman.client - the Python bindings to Mailman's core REST API
  • How to integrate Postorius into your existing Django project

Hyperkitty: The new Django-based archiver interface

  • An example how to use Mailman's archiving API.
  • Integration

Extra: Beyond mailing lists

Is Mailman 3 "just" a Mailing List Manager?