Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/iloveitaly/listmonk-newsletter
Generate a newsletter digest from an rss feed and send it to a listmonk instance
https://github.com/iloveitaly/listmonk-newsletter
feed listmonk newsletter rss
Last synced: 19 days ago
JSON representation
Generate a newsletter digest from an rss feed and send it to a listmonk instance
- Host: GitHub
- URL: https://github.com/iloveitaly/listmonk-newsletter
- Owner: iloveitaly
- Created: 2024-07-20T19:20:25.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-12-03T13:01:42.000Z (25 days ago)
- Last Synced: 2024-12-06T07:44:32.502Z (22 days ago)
- Topics: feed, listmonk, newsletter, rss
- Language: Jinja
- Homepage: https://github.com/iloveitaly/listmonk-newsletter
- Size: 147 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Listmonk Email Newsletter Digest
Generate a [listmonk](https://listmonk.app) newsletter digest campaign from an RSS feed. I'm using it for my personal blog.
## Usage
Best way to use [this is docker](docker-compose.yml) and set it to run on a schedule. Check out the envrc-example for configuration details.
Some useful commands:
* `LOG_LEVEL=DEBUG` is useful for debugging
* `docker compose exec listmonk-newsletter bash -l` is useful for executing commands directly
* `poetry install` and then `listmonk-newsletter` to run it locally## Email Templates
You can provide your own email template to use. The one bundled, which is specifically styled for [my blog](https://mikebian.co),
is based off [of this template](https://github.com/ColorlibHQ/email-templates/blob/master/7/index.html).### ListMonk Template Variables & Jinga2
What's neat is you can include ListMonk template variables (unsubscribe, tracking, etc) in the generated jinga2 template. This means you want your listmonk template to be a completely blank template and instead include everything in your email template added to this docker container.
You'll see this in the example template as:
```
{% raw %}{{ UnsubscribeURL }}{% endraw %}
```Another interesting listmonk quirk is if you want link tracking, you need to add `@TrackLink` to the end of the URL. If you pass links to the campaign API without this, they will not be tracked.
## TODO
- [ ] report test email bug to listmonk https://github.com/knadh/listmonk/issues/1948
- [ ] click tracking when sending HTML content through the API doesn't seem to work
- [ ] add cli switches for env vars
- [ ] list selection should be configurable
- [ ] gpt-powered titles and summaries
- [ ] pull github releases and add to digest with gpt summary
- [ ] maybe add twitter content and add to update?