Skip to main content

R2K (RSS to Kindle)

r2k is a tool that lets you to track your favorite RSS/Atom feeds, and send cleaned-up (i.e. only text and images) articles received from them directly to your Kindle.

Installation

Cleaning up the articles

Usage

Installation

The best way to get up and running with r2k us to use pipx. Simply run:

pipx install r2k

If you're not using pipx (you should!), pip install r2k will also do.

If you want to add r2k to your Poetry project, run poetry add r2k.

Cleaning up the articles

There are currently 3 ways to clean up articles:

  1. The default is using the readability Python implementation. It doesn't require any extra steps or installations, and thus is the easiest to use. It is, however, a bit less precise than the other 2 methods.
  2. Using the PushToKindle service. The service works by attaching an email address that forwards cleaned up versions of URLs to your Kindle. It's free for a certain amount of articles, but you need to become their supporter afterward.
  3. Using a dockerized version of the Mercury-Parser. This method requires Docker, but is marginally better than the readability approach.

Usage

Preparations

If you're using PushToKindle (PTK)

The free version of PTK only allows for 25 articles to be sent using their service. After this, you'll have to become their "sustainer" (for as low as 1$/month) on Patreon here.

Before using r2k with PTK you need to:

  1. Know your kindle email address (find it here, under "Preferences" -> "Personal Document Settings").

  2. Add kindle@fivefilters.org to the list of approved email senders (in the same place in Amazon's settings).

Set up your configuration file

Most of what r2k does involves the configuration file, in which the feeds you're subscribed to are kept, as well as some other data.

After installation, run:

r2k config init [-p CONFIG_PATH] 

The default location for the config YAML file is in ~/.r2k/config.yml.

During the init you'll be asked several questions (like your kindle email address).

To see your configuration run:

r2k config show [-p CONFIG_PATH]

Adding your GMail credentials

Currently r2k relies on the fact that you have a GMail address, and it requires a Google App Password. These are useful in cases where you don't want to go through 2FA authentication. Go here to generate an r2k App Password, and add it to the configuration.

Add some RSS subscriptions

Using an OPML file

The OPML format is widely used in the RSS/Atom world (as well as in podcasting and other areas) to represent a collection of feeds. You can export your existing subscriptions from most feed readers into an OPML file.

To load all of your subscriptions in one move run:

r2k feed import PATH_TO_OPML_FILE

Manually adding feeds

If you don't have an OPML export, or just want to add a single feed you can run:

r2k feed add -t FEED_TITLE -u FEED_URL

If the FEED_URL is a proper RSS feed (i.e. an actual XML feed URL), it will be added as is. If the FEED_URL is a regular URL, r2k will attempt to find the RSS feed by analyzing the page source. In the case of multiple candidates (e.g. WordPress content feed and comment feed), you will be presented with a list of choices.

Send updates to your Kindle

Right now the "periodical" part of r2k is not yet operational. In order to send updates to your Kindle you'll have to run:

r2k kindle send [-f FEED_TITLE]

If you don't pass the -f/--feed-title option, updates will be sent for all of your subscriptions.

The first time that kindle send is run for any feed, you will be presented with a list of all the available articles in the feed (note that RSS feeds usually only keep a subset of the most recent entries), and will be asked to choose the last one you've already read. This is to avoiding sending you any article you've already consumed.

Release files for r2k 0.7.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for r2k 0.7.4
File Size Uploaded
r2k-0.7.4.tar.gz 137.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for r2k 0.7.4
File Interpreter ABI Platform
r2k-0.7.4-py3-none-any.whl Python 3 none any Details

Total release size: 282.9 kB

Release files / r2k-0.7.4.tar.gz

Download URL r2k-0.7.4.tar.gz
Size 137.0 kB
Tags Source
SHA-256 checksum
How to use checksums
fbac903db6df6ff12030d2b04262e809ca48a29f330ee71ebb1e0aab0c9550fa
BLAKE2b-256 checksum
How to use checksums
d74d7893785f01ea662a4d132ce903fcfa55e19382af29e9d83fa01cd26f1e87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.8.12 Darwin/21.3.0

Release files / r2k-0.7.4-py3-none-any.whl

Download URL r2k-0.7.4-py3-none-any.whl
Size 145.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bd622f12555cca635bf994ba404e258cdced0ac3f26933c31d3e36a6eaa6ec9e
BLAKE2b-256 checksum
How to use checksums
5295ffca984bb1804e4661cdf342bf1ecd92d4f10cf6a40e579c5b99ff1a49d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.8.12 Darwin/21.3.0

Release history Release notifications | RSS feed

This release

0.7.4 This release

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.6.19

2 release files

0.6.18

2 release files

0.5.17

2 release files

0.5.14

2 release files

0.5.13

2 release files

0.5.12

2 release files

0.5.11

2 release files

0.5.9

2 release files

0.5.8

2 release files

0.5.6

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.4.22

2 release files

0.4.20

2 release files

0.4.18

2 release files

0.4.17

2 release files

0.4.15

2 release files

0.4.11

2 release files

0.4.10

2 release files

0.4.9

2 release files

0.4.8

1 release file

0.4.7

1 release file

0.4.6

1 release file

0.4.2

2 release files

0.4.1

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

1 release file

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page