Differences between revisions 1 and 34 (spanning 33 versions)
Revision 1 as of 2008-06-18 13:12:38
Size: 1499
Editor: terri
Comment:
Revision 34 as of 2015-01-12 00:17:34
Size: 5164
Comment: we aren't using that status page
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
#pragma page-filename DEV/versions/4489287
= Summer of Code/Templating: =
 1. [[..//2006/08/20/Summer of Code summary|Summer of Code summary]] - the project for 2007 concentrated on new ideas for the web UI, and [[../~mindlace|~mindlace]] has an excellent summary here of what was tried
  1. [[../StyledPages|StyledPages]]
  1. [[../TemplatingNotes|TemplatingNotes]]
= Specific suggestions =
== Member/subscriber Interface ==
From [[http://www.mail-archive.com/mailman-users%40python.org/msg49681.html]]:
## page was renamed from DEV/Web Interface
#pragma page-filename DEV/versions/4489286
= New Web Interface (Postorius) =
Line 10: Line 5:
{{{
It is not obvious from the list information page how one would obtain a password reminder. You have to click the "Unsubscribe or edit options" button to get to the page with the password reminder button. This really needs to be FAR more obvious. It really should be an item on the very first page a user sees.
}}}
Postorius is the main component of the administrative interface of Mailman 3. It is an application based on the Django framework and is currently [[https://launchpad.net/postorius/trunk/1.0.0b1|in beta]]. The project is hosted on Launchpad:
Line 14: Line 7:
== List Admin interface ==
= Other Notes =
[[https://launchpad.net/postorius|https://launchpad.net/postorius]]

Postorius depends on mailman.client, the Python bindings to Mailman's REST interface:

[[https://launchpad.net/mailman.client|https://launchpad.net/mailman.client]]

== Design rationale ==

Mailman 3 comes with a new architecture which allows for a separation between the web user interface (WUI) and the mailing list engine. In fact, you can run Mailman 3 with no WUI at all, or integrate Mailman 3 with the rest of your web site by accessing the REST admin interface via mailman.client.

For standalone systems, we are developing and shipping our own updated WUI. The original Mailman 2 user interface was designed in the late 1990's so it's clearly dated, and the technology backing it is ancient, inflexible and non-standard. Today, there are tons of great Python-based web frameworks, and of course `JavaScript` is all the rage today. We want a modern, good looking, well-organized WUI that can be used with Mailman 3 but is optional for those sites that want to heavily customize their use of Mailman. Thus: Postorius!

== Guidelines ==

 1. Modern, easy to use web user interface for users, list admins, and site admins.
 1. Progressive enhancement; i.e. can use `JavaScript` for dynamic aspects, but must remain usable for non-`JavaScript` browsers, and must be friendly to screen readers.
 1. WUI templates must support internationalization by allowing us to mark up translatable texts for inclusion in the `gettext` catalog. Technology must integrate with Python's `gettext` module and/or Mailman's i18n infrastructure.
 1. WUI template system must be Python-based (framework TBD) and GPLv3 compatible.
 1. `JavaScript` library must be GPLv3 compatible (framework TBD).

== Templating systems ==

We chose the '''Django''' templating system. Some thoughts we were considering:

 * It would be nice to use the same templating system in the WUI and core engine. I'd like to be able to use templates for all email that Mailman sends
 * It should be friendly to [[../Internationalization|Internationalization]]. Meaning it should be possible to extract texts from templates and add them to a [[http://www.python.org/doc/current/library/gettext.html|gettext]] catalog.
 * Of course, written in Python

== Developing Postorius ==

The Mailman WUI (a.k.a. Postorius) is developed on [[http://launchpad.net/postorius|Launchpad]] (code, code review, and bug reports), and we discuss it on the [[http://mail.python.org/mailman/listinfo/mailman-developers|mailman-developers]] mailing list. Please also see the bottom of the page for more resources (including mockups, feature suggestions, and prior work).

A quick 5 minute guide (if you're lucky) to get Postorius installed for development can be found here:

[[../A 5 minute guide to get the Mailman web UI running|A 5 minute guide to get the Mailman web UI running]]

A guide to run Postorius using Apache is part of the Postorius documentation:

[[http://packages.python.org/postorius/setup.html|http://packages.python.org/postorius/setup.html]]

Some preliminary notes on testing new code in Postorius (this is still a draft...):

[[http://packages.python.org/postorius/development.html|http://packages.python.org/postorius/development.html]]


Please add your name to this list, and email the mailman-developers list, if you are interested in helping out!

 * [[../../~barry/Home|Barry Warsaw]]
 * Patrick Ben Koetter
 * [[terri|terri]]
 * [[anna.granudd@gmail.com|Anna Granudd]]
 * [[f@state-of-mind.de|Florian Fuchs]]
 * Claudia Fleiner
 * [[benste|benste]]
 * Toshio Kuratomi
 * Sumana Harihareswara


== Wish List / Random Ideas ==

 * "moderate_all" option for admins: "Consider an admin that is reviewing a bunch of bounces/spam, etc. It might be handy for him to have some buttons to freeze the list (eg. moderate-all) in that context without having to navigate over to a different section to set that flag." (wacky via irc)
 * showing the Log in the WUI (C Nulk via Mailinglist)
 * allowing a user 'to be on vacation' (wacky via IRC)
Line 24: Line 78:
 * [[DEV/Web Interface Status|Web Interface Status]]  * [[DEV/Web Interface Status|Web Interface Status]] and [[DEV/Web Interface Status/2012|old updates]]

New Web Interface (Postorius)

Postorius is the main component of the administrative interface of Mailman 3. It is an application based on the Django framework and is currently in beta. The project is hosted on Launchpad:

https://launchpad.net/postorius

Postorius depends on mailman.client, the Python bindings to Mailman's REST interface:

https://launchpad.net/mailman.client

Design rationale

Mailman 3 comes with a new architecture which allows for a separation between the web user interface (WUI) and the mailing list engine. In fact, you can run Mailman 3 with no WUI at all, or integrate Mailman 3 with the rest of your web site by accessing the REST admin interface via mailman.client.

For standalone systems, we are developing and shipping our own updated WUI. The original Mailman 2 user interface was designed in the late 1990's so it's clearly dated, and the technology backing it is ancient, inflexible and non-standard. Today, there are tons of great Python-based web frameworks, and of course JavaScript is all the rage today. We want a modern, good looking, well-organized WUI that can be used with Mailman 3 but is optional for those sites that want to heavily customize their use of Mailman. Thus: Postorius!

Guidelines

  1. Modern, easy to use web user interface for users, list admins, and site admins.
  2. Progressive enhancement; i.e. can use JavaScript for dynamic aspects, but must remain usable for non-JavaScript browsers, and must be friendly to screen readers.

  3. WUI templates must support internationalization by allowing us to mark up translatable texts for inclusion in the gettext catalog. Technology must integrate with Python's gettext module and/or Mailman's i18n infrastructure.

  4. WUI template system must be Python-based (framework TBD) and GPLv3 compatible.
  5. JavaScript library must be GPLv3 compatible (framework TBD).

Templating systems

We chose the Django templating system. Some thoughts we were considering:

  • It would be nice to use the same templating system in the WUI and core engine. I'd like to be able to use templates for all email that Mailman sends
  • It should be friendly to Internationalization. Meaning it should be possible to extract texts from templates and add them to a gettext catalog.

  • Of course, written in Python

Developing Postorius

The Mailman WUI (a.k.a. Postorius) is developed on Launchpad (code, code review, and bug reports), and we discuss it on the mailman-developers mailing list. Please also see the bottom of the page for more resources (including mockups, feature suggestions, and prior work).

A quick 5 minute guide (if you're lucky) to get Postorius installed for development can be found here:

A 5 minute guide to get the Mailman web UI running

A guide to run Postorius using Apache is part of the Postorius documentation:

http://packages.python.org/postorius/setup.html

Some preliminary notes on testing new code in Postorius (this is still a draft...):

http://packages.python.org/postorius/development.html

Please add your name to this list, and email the mailman-developers list, if you are interested in helping out!

Wish List / Random Ideas

  • "moderate_all" option for admins: "Consider an admin that is reviewing a bunch of bounces/spam, etc. It might be handy for him to have some buttons to freeze the list (eg. moderate-all) in that context without having to navigate over to a different section to set that flag." (wacky via irc)
  • showing the Log in the WUI (C Nulk via Mailinglist)
  • allowing a user 'to be on vacation' (wacky via IRC)


MailmanWiki: DEV/Postorius Web Interface (last edited 2016-03-02 17:35:48 by SimonHanna)