Read-it-later without another Read-it-later app
I read from many different formats:
- Hacker news articles + comment pages (on phone browser after waking up)
- Online articles (on phone/laptop browser, often open in new tab and read next week)
- RSS articles (phone/laptop via FreshRSS self-hosted web service)
- Books and papers (browser PDF or stored offline -> readable on ereader)
Some things I read are very insightful and worth rereading so I archive them (create permanent offline copy via Zotero). Anything in this bucket is viewable on my ereaders and all devices since the Zotero storage attachments folder is synced with Syncthing.
But if I want to use an ereader more often to lower distractions/read outdoors/give my eyes a rest, there’s a problem. Only things that I put into the right Syncthing folder (either Zotero archives or deliberately saved EPUBs/PDFs) make it to ereaders, and my ereaders are slow enough that it isn’t fun to browse the web on them. I also often have an ereader in a place where internet is hard to reach. This means the things on my ereader ready to read are limited to things already in that Syncthing folder. Any online/RSS articles are only easily reachable on the same device that originally opened them into a new tab (aka my phone, never an ereader).
How can I have these same articles just ready to go on my ereader when I want to read something, without planning ahead? Some ideas:
- Syncthing is already set up - as long as the ereader is sometimes connected to internet, any files in the shared folder should get synced. This could include HTML from these articles
- KOReader is pointed at the same Syncthing folder and would be the best way to read articles (no ‘scrolling’ required for HTML) (with a KOReader caveat of slow increase of unnecessary hash-based metadata saved if never reading 90%+ of these again)
- No good ideas for pairing Hacker News comments with their article
An issue to note is that both articles automatically downloaded by my RSS aggregator FreshRSS and articles that I myself stumble upon and with to ‘read later’ should be included here. My current ‘read it later’ strategy is just to open a tab and eventually while ’tabbing out’ later (my phrase for processing and closing many opened tabs that have piled up) read it, which has disadvantages in realistically only reading the article on the same device and sometimes losing the article. Minimal change from the ‘open a new tab’ strategy would maximize the probability that I actually use it and thus read more on my ereader (and thus hopefully avoid more distractions).
There are various ‘read-it-later’ apps that already exist. Here are a few:
- Wallabag - web app for which KOReader has a plugin
- KOReader has a News Downloader plugin that fetches RSS/Atom feeds and makes EPUB files out of them. I’m not sure how well it works, but it requires manual loading. Would be nicer to use the network-wide FreshRSS that all other devices can access, and which can auto-fetch new feeds.
- Omnivore is new and interesting but its saved articles aren’t stored in a portable format and it isn’t quite self-hostable last I checked.
The issue with most read-it-later apps is just that - they are yet another app. Adding another application isn’t inherently bad, but it takes time to set up and learn and I find myself only going back to a very select few over time, so I’d rather use existing ones where possible. Ideally I’d like to still use KOReader to read the articles. For ultimate portability, the articles should be PDFs or self-contained HTML/EPUB files, and many apps like Wallabag and Omnivore instead use intractable SQL databases.
However, Zotero uses the SingleFile extension to get pure HTML files. One option is just to use a new Zotero collection to store all temporary read-it-later articles, as then they get synced everywhere. This would be nice to have the sorting and additional info provided by Zotero. The biggest issue with this approach is that Zotero by default does not use linked attachments in the Syncthing directory, instead storing each file in its own directory in an inaccessible way. This makes it very hard to sync these files with Syncthing or open them with KOReader or other apps. This can be overcome with Zotfile to batch move the files but is a manual pain and isn’t supported in the latest Zotero 7, and even if Zotfile continued to work it would be too much to deal with for mainly ephemeral articles. I’m also highly doubtful that the new Zotero Android app will work with Kiwi browser Chrome extension Zotero Connector to save articles from there which is very necessary.
The best option may instead be to use SingleFile completely on its own, as the extension can be configured everywhere to upload the saved webpage to a WebDAV server. I host WebDAV on my Linux box with a rclone systemd package and upload each resulting HTML file to the WebDAV server, which shares a subdirectory within my primary Syncthing directory. Then all read-it-later articles automatically get synced to all my devices and ereaders as plain files and just need to be read and then deleted from anywhere, which is easy in KOReader. The best articles can alternatively be put in a ‘save’ subfolder and eventually archived.
- (SingleFile Companion Lite is another option, which is an external program that lets you save the file to a non-Downloads folder which I could point to the same Syncthing read-it-later subdirectory, but this requires a lot more work than just installing an extension)
This doesn’t solve getting RSS on my devices - I’ll update this article once it does. But I can install the SingleFile extension on all my devices (even Android via Kiwi Browser or Firefox) and point them to upload to the same server, giving me a decent a read-it-later solution without a read-it-later app.