EasyNewsletter is a simple but powerful newsletter/mailing add-on for Plone.
- Plain text and HTML newsletters (including images)
- Manual written newsletters/mailings
- Automatic Plonish newsletters/mailings: Utilize Plone's Collections to collect content
- Send out daily/weekly/monthly issues automatically, based on collections (by cron or clock-server)
- Flexible templates for Collections, to generate newsletter content
- TTW customizable output template to generate HTML newsletters
- Personalized emails
- Subscribing/unsubscribing
- Import/export subscribers via CSV
- Use Plone Members/Groups as receivers (works also with Membrane)
- External subscriber filtering/manipulation with plugins (filter out or add more subscribers)
- Python 3.10+
- Plone 6.1.1
Install dependencies using uv:
uv sync --extra devStart the Plone instance:
invoke startOr run directly:
runwsgi instance/etc/zope.iniThe initial admin user is configured in instance/inituser (default: admin/admin).
uv run pytestUse invoke for common tasks:
uv run invoke --listThe project uses zest.releaser for releases. The build backend is hatchling — no setup.py is needed.
To do a full release:
uv run fullreleaseThis will:
- Update the version in
pyproject.toml - Update
CHANGELOG.md - Tag the release in git
- Build an sdist and wheel
- Upload to PyPI via twine
Release configuration is in pyproject.toml under [tool.zest-releaser].
For more documentation please visit: http://productseasynewsletter.readthedocs.io
- If parts of the ENLIssue footer show up in the Plone footer, change the footer portlet view name from
footerto@@footer. This issue was fixed in Plone already, but you have to manually update this in an existing site.
Please help us to improve translations with Weblate: https://hosted.weblate.org/engage/products-easynewsletter/
https://github.com/collective/Products.EasyNewsletter
https://github.com/collective/Products.EasyNewsletter/issues
Funding welcome ;)
- Async task queue for Plone > 5.2, as an alternative to collective.taskqueue which will not support WSGI
- Integration of Mosaico newsletter editor
- External subscriber sources / delivery services
- convert robot tests with playwright based E2E tests
- Maik Derstappen [MrTango] md@derico.de - https://derico.de
- Kai Dieffenbach: initial release
- Andreas Jung
- Dinu Gherman
- Jens W. Klein
- Peter Holzer
- Philip Bauer
- Thomas Massman [tmassmann]
- Timo Stollenwerk
GPL-2.0-or-later