A Miniflux Client that sends feed updates via email.
This is a perfect "no-cost" solution based on GitHub and SMTP for people who often forget to check RSS readers for updates but never miss emails.
Just Fork it! ©
Background
While there are numerous "RSS-over-email" services available, such as Mailbrew, Briefcake, or Tacodigest, this project aims to recreate essential features of those services using Git, CI, and SMTP. In most cases, these tools can be used free of charge and are available with open-source GitHub/GitLab repositories.
GitHub Actions
Every 3 months, GitHub will ask if you want to continue running daily actions. Click "Yes" if you wish to keep receiving updates.
Prerequisites
- GitHub repository with CI support
- A Miniflux instance with an account
- SMTP account (Gmail is recommended, but ensure it's not your main Gmail account if you choose to use it)
Setup
- Fork this repository
- Retrieve your Miniflux API token
- Configure Gmail SMTP by following this guide
- Modify the
.github/workflows/runner.ymlfile - Add GitHub Action secrets (SMTP_SERVER, SMTP_USERNAME, and SMTP_PASSWORD are required)
Self-Hosted
For self-hosted deployments, a container image is available at ghcr.io/skatkov/miniflux-email-client.
Example Kubernetes CronJob
apiVersion: v1 kind: Secret metadata: name: miniflux-email-client type: Opaque stringData: MINIFLUX_TOKEN: "your-miniflux-api-token" SMTP_USERNAME: "your-smtp-username" SMTP_PASSWORD: "your-smtp-password" --- apiVersion: batch/v1 kind: CronJob metadata: name: miniflux-email-client spec: schedule: "0 8 * * *" # Daily at 8 AM jobTemplate: spec: template: spec: restartPolicy: Never containers: - name: miniflux-email-client image: ghcr.io/skatkov/miniflux-email-client:latest envFrom: - secretRef: name: miniflux-email-client env: - name: SEND_TO value: "you@example.com" - name: MINIFLUX_URL value: "https://your-miniflux-instance.com/" - name: CATEGORY value: "Daily"
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
MINIFLUX_URL |
No | https://reader.miniflux.app/ |
Miniflux instance URL |
MINIFLUX_TOKEN |
Yes | - | Miniflux API token |
CATEGORY |
No | - | Filter entries by category name |
LIMIT |
No | - | Maximum number of entries to fetch |
SMTP_SERVER |
No | smtp.gmail.com |
SMTP server hostname |
SMTP_PORT |
No | 587 |
SMTP server port |
SMTP_USERNAME |
Yes | - | SMTP authentication username |
SMTP_PASSWORD |
Yes | - | SMTP authentication password |
SEND_FROM |
No | SMTP_USERNAME |
Email sender address |
SEND_TO |
Yes | - | Email recipient address |
The email template is powered by the Acorn framework.