June 24th, 2024

From RSS to My Kindle

The author discusses integrating Kindle functionality into their feed reader app, feedi, using Python. They detail extracting article content, packaging it into EPUB files, and sending to Kindle via email. Future plans involve enhancing JavaScript website compatibility.

Read original articleLink Icon
From RSS to My Kindle

The author discusses integrating Kindle functionality into their personal feed reader application, feedi. They describe the challenges faced with existing methods of sending articles to Kindle and the solution they implemented using Python. The process involves extracting cleaned-up article content from websites, packaging it into EPUB files, and sending them via email to the Kindle device. The author details the steps involved in the extraction process using Python libraries and a Node.js script. They also explain how they handle images, convert WebP images to JPEGs, and package the content into a valid EPUB file. Additionally, the author outlines the email setup required to send the EPUB files to Kindle and the considerations for handling non-ASCII characters in filenames. The implementation aims to improve the reading experience by allowing offline access to articles on Kindle. Future improvements include handling JavaScript-centric websites and exploring browser extensions for easier integration with feedi.

Link Icon 16 comments
By @velcrovan - 5 months
Nit (maybe minor, maybe not): The EPUB standard requires[1] that the `mimetype` file be the first file stored in the ZIP container, and also that it be stored without being compressed.

It doesn't look like the author's code is conforming to this part of the standard.

If that is the case, then their Kindle may be able to tolerate the deviation. But using this code with an e-reader that adheres closely to the EPUB spec may produce broken results.

[1]: https://www.w3.org/TR/epub-33/#sec-zip-container-mime

By @bronxpockfabz - 5 months
I feel like a new generation of Android powered e-ink tablets / phones is the answer here: https://shop.boox.com/collections/eink-tablet.

Or maybe even that TCL tablet that looks kinda like e-ink, but is actually OLED: https://www.tcl.com/uk/en/tablets/tcl-nxtpaper-10s.

Constantly pushing stuff to Kindle, which is inherently extremely limited device (gotta love walled gardens!) feels like a bit too much friction to me.

By @locofocos - 5 months
Very neat. I've been doing this with Calibre (https://calibre-ebook.com/), which involves plugging it into your PC via USB. Simple RSS feeds work with little configuration, and more complicated news sites require writing a custom python "recipe".

This project uses Amazon's email gateway, which I think is limited to 25 articles per month (don't quote me on this).

By @sriacha - 5 months
I'm using Singlefile firefox extension on computer and phone to save article to html. Then it gets synced to kobo via syncthing (through koreader). Works pretty well.
By @timvdalen - 5 months
I've been doing a similar thing for my Kobo with an ITTT action that fetches RSS feed URLs and adds them to my Pocket account, which automatically syncs. I'm obviously not as in-control as this method, but it's been surprisingly stable.
By @rty32 - 5 months
I have run into similar problems, and I haven't found a perfect solution yet. I am curious about what people here are doing.

First, specifically about this "RSS to kindle" thing: it's definitely nice, but it means I need to push all articles to kindle, including those I'm not interested in by reading the headline. When I use feedly, I probably scroll past more than half of the articles in my feed. I wish there was a native RSS reader on kindle.

And I have similar needs to articles that I find on Hacker News or elsewhere. Most of the time I push them to Pocket and deal with them later. I haven't tried all pocket integrations (or other similar "push to kindle services), but p2k isn't great as it compresses images to the degree that they are not legible any more. And there are always some articles that either don't render at all, or things break (e.g. table not showing). Finally, it's painful to clean up my kindle library, and I wish I don't need to do any organization work.

I considered boox but they are really bad at keeping Android updated. Customer service is also bad -- I have seen horror stories.

Scribe's browser is actually much better than in previous generations, but nowhere near what I find usable.

Perhaps the best solution is to have an iPad mini. The device is very responsive, the screen size is perfect, there are lots of apps for almost everything I want to read, and the article mode in Safari works well. But I really don't want to spend $400 to have another tablet just for reading, and I really want things to just work on my two kindles. Unfortunately there doesn't seem to be a great way to do that.

By @freeplay - 5 months
Not much to contribute other than "this is great." It's one of those things I didn't know I wanted until I read your article.
By @t0bia_s - 5 months
I use maybe little more complicated workflow, but for now, I couldn't find better.

I subscribe RSS to Omnivore and use tags for those I read later. I have tag "logseq" which imports those read later articles to logseq (via omnivore plugin). Then I sync by syncthing to Onyx Boox ereader and read them here. Omnivore let me save articles from various sources offline, which works great for ereader.

It would be faster to read read Omnivore right in browser, however Im using Onyx Boox mostly offline because I dont trust their apps. Also, Omnivore let me highlight notes right in text which gives me another link in logseq database.

https://omnivore.app/

https://logseq.com/

https://syncthing.net/

By @funksta - 5 months
I've built something similar for myself (generating 2x-per-day pdfs for my reMarkable 2) and it's so nice to catch up on internet news on this kind of calm device instead of a laptop or phone.

I used a traditional web-based RSS reader for many years but found that I wounded up checking it just as compulsively as the sites it ostensibly replaced.

By @rldjbpin - 5 months
hacking around the limitations of proprietary soft-/hardware has been very interesting for me through project such as this one.

personally though, i am awaiting the new generations of eink displays on android tablets to become more accessible to avoid this level of complexity or reliance.

By @xd1936 - 5 months
Many years ago, I built a Bash script to do something similar.

https://gist.github.com/leoherzog/1dcffe776af200cd9117

Very cool!

By @nop_slide - 5 months
Semi related, but have you found a way to get kindle highlights out of amazon?

I've been using Readwise (and Reader) which have been great, but it's rather expensive.

I'd love to be able to send an arbitrary article to Feedi like I can with Reader, but also would love to sync highlights back from my kindle.

Going to lurk the repo, cool stuff!

By @voidUpdate - 5 months
How do you add an RSS feed to your own blog? Maybe my google-fu is failing me these days but all I'm getting is how to create one for your podcast. I'd just like people with an rss reader to be able to access my blog as a feed
By @quintex - 5 months
You can achieve your share option in iOS using shortcuts. If you make a shortcut that sends the content of the share (like the URL of the article) to an arbitrary URL.
By @adam_albrecht - 5 months
I subscribe to QiReader for exactly this feature. Works great. https://www.qireader.com/
By @djyde - 5 months
I made https://epubkit.app for myself to do this.