How it works? Simple! Every day at 11 am (or at time of your choosing) letter runs on
the server via cron
and fetches all your precious RSS feeds to check whether
there is anything new from yesterday. After some mapping and rendering newsletter digest is created
and sent via e-mail. All in a catsy manner. And right into your inbox.
to have your own daily readings delivered with Letter
-
Click Use this template button above and create your repo from this template
-
Create secret variables in your newly created repository with keys as seen below
-
Fill up your favorite feeds either in plain
feeds.txt
file or viafeeds.opml
(OPML file can be exported from most rss services) -
(optionally) Change cron time settings in
letter.yml
to your liking. By default letter will deliver your readings everyday at 11am UTC. You can also check if everything works as you want by triggering Github workflow via providedmanual-trigger.yml
.
Below Github Secrets are required for running Letter
LETTER_FEEDS=plain # plain or opml (default is plain)
MAIL_TO=dailyread@example.com
MAIL_FROM=Letter <letter@example.com>
SMTP_HOST=smtp.gmail.com # or whatever mail service you use
SMTP_PORT=465 # or some other
SMTP_SECURE=true # in most cases set this to true if you are connecting to port 465
SMTP_USERNAME=username
SMTP_PASSWORD=password
Letter uses Handlebars with html extension as default templating engine. Email is generated from letter
template inside emails
directory. You can make it your own as you please. Templating
assumes the structure of html
, subject
and text
html files. Here's how letter template looks by default:
Sometimes certain services like i.e Feedly, export OPML feeds in a nested manner. Letter supports both flat and categorized notations. Even in the same file. Please see feeds.opml.example
If you use Gmail for sending out the newsletter and your account has Two-Factor Authentication (2FA) enabled you
need to generate app-specific password which then can be used in place of your regular SMTP_PASSWORD
variable in .env
file.
Meow-what ? Cats don't need no stinking licenses. Just be good and state the source of the original cat [wink].
I have tried hard to find original authors of cat gif and cat avatar used in the template and header. Long time ago i found those chucklesome pics sitting in my old computer folder one day and they sparked me to make this simple why-not weekend project. Funny enough i found myself using it for this day (What can i say - i just love my RSS readings delivered as email - i'm weird that way) Aaanywho - if you are the original author of any of these lovely cats, please let me know so i could give credit where credit is due.