Skip to main content

A Listmonk newsletter integration for Plone.

Project description

kitconcept GmbH

collective.listmonk

Listmonk newsletter integration for Plone

PyPI PyPI - Python Version PyPI - Wheel PyPI - License PyPI - Status

PyPI - Plone Versions

Meta Code Style

GitHub contributors GitHub Repo stars

Features

collective.listmonk adds the ability to send email newsletters from a Plone site.

Content Types

name context
Newsletter Represents a Listmonk mailing list

Installation

Add collective.listmonk as a dependency in your package's setup.py

    install_requires = [
        "collective.listmonk",
        "Plone",
        "plone.restapi",
        "setuptools",
    ],

Also, add collective.listmonk to your package's configure.zcml (or dependencies.zcml):

<include package="collective.listmonk" />

Generic Setup

To automatically enable this package when your add-on is installed, add the following line inside the package's profiles/default/metadata.xml dependencies element:

    <dependency>profile-collective.listmonk:default</dependency>

Source Code and Contributions

We welcome contributions to collective.listmonk.

You can create an issue in the issue tracker, or contact a maintainer.

Development requirements

  • Python 3.11 or later
  • Docker

Setup

Install all development dependencies -- including Plone -- and create a new instance using:

make install

Start Listmonk

make start-listmonk

This runs Listmonk at http://localhost:9000 and Mailhog at http://localhost:8025

Start Plone

make start

Update translations

make i18n

Format codebase

make format

Run tests

Testing of this package is done with pytest and tox.

Run all tests with:

make test

Run all tests but stop on the first error and open a pdb session:

./bin/tox -e test -- -x --pdb

Run only tests that match TestVocabAuthors:

./bin/tox -e test -- -k TestVocabAuthors

Run only tests that match TestVocabAuthors, but stop on the first error and open a pdb session:

./bin/tox -e test -- -k TestVocabAuthors -x --pdb

Credits

The development of this add-on has been kindly sponsored by German Aerospace Center (DLR).

German Aerospace Center (DLR)

Developed by kitconcept

License

The project is licensed under GPLv2.

Contributors

  • David Glick [@davisagli]
  • Érico Andrei [@ericof]

Changelog

1.0.0a7 (2024-04-24)

Bug fixes:

  • If a subscriber unsubscribes but still has an unconfirmed subscription to another list, don't delete the subscriber. @davisagli #16
  • Fix translation of unsubscribe link. @davisagli #17

1.0.0a6 (2024-04-22)

New features:

  • Unsubscribe links now include a subscriber UUID, so it's not possible to unsubscribe a different subscriber. Also, if the user is unsubscribed from all lists, the listmonk subscriber will be deleted, to avoid retaining private data. @davisagli #14
  • Add options to customize the confirmation email for a newsletter. @davisagli #15

1.0.0a5 (2024-04-15)

Bug fixes:

  • Make @mailings GET service available on any content where the user has Send Newsletter permission. @davisagli #13

1.0.0a4 (2024-04-09)

New features:

  • Send an email confirmation of a new subscription. @davisagli #12

1.0.0a3 (2024-04-07)

Bug fixes:

  • Don't add header and footer to the email automatically, so the editor has control. @davisagli #11

1.0.0a2 (2024-04-07)

Bug fixes:

  • Avoid runtime dependency on plone.app.robotframework. @davisagli #10

1.0.0a1 (2024-04-07)

No significant changes.

1.0a1 (unreleased)

  • Initial development. @davisagli

Project details


Download files

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

Source Distribution

collective.listmonk-1.0.0a7.tar.gz (42.5 kB view details)

Uploaded Source

Built Distribution

collective.listmonk-1.0.0a7-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file collective.listmonk-1.0.0a7.tar.gz.

File metadata

  • Download URL: collective.listmonk-1.0.0a7.tar.gz
  • Upload date:
  • Size: 42.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for collective.listmonk-1.0.0a7.tar.gz
Algorithm Hash digest
SHA256 5e117e58188aea1dff851cdb9adc53f3e1c9e5452d517a3b7cae1d2740faa491
MD5 853954cb6784264f3a791fccb6325829
BLAKE2b-256 12d6fb74186f841a96373d0aaf31ae346617e07d5dd2ea49c141d819927e272c

See more details on using hashes here.

File details

Details for the file collective.listmonk-1.0.0a7-py3-none-any.whl.

File metadata

File hashes

Hashes for collective.listmonk-1.0.0a7-py3-none-any.whl
Algorithm Hash digest
SHA256 8a16788ae6a25543ebc5ba5dc7fe8bb0c00cbe64998344ed82f041662f91aaf9
MD5 16b22c0772933957199cd1b78e77eb3b
BLAKE2b-256 708d6dcc11ddfc9cde9eccb7dadf328c5b7d781acf2eb9a138b288692b1fb765

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page