RSS Subscriptions

I use Really Simple Syndication (RSS) to follow interesting web sites. You need three things to follow web sites with RSS:

1. A site's RSS feed, for example 2. A way to store the feeds in an OPML file as most RSS aggregator apps use OPML for storing a list of RSS feeds 3. An app that queries the RSS feeds for updates and displays the updates.

I use Dave Winer's River5 app to monitor the RSS feeds that I "subscribe" to and display updates. I have an instance of the app installed on a server hosted at Google and I access my River of News site to look for updates. (Note, my instance or River5 has been running for 547 days as of this writing.)

I use Little Outliner to maintain my list of RSS feeds. viewer The key to using Little Outliner to maintain these feeds is to make the feed OPML file public and finding it's direct URL that you must be able to access via the Internet. My RSS feeds OPML is at link . Note that I have Little Outliner configured to use my own server rather than the server that Dave provides.

River5 expects the RSS file to be stored in the local file system. The trick is to set up the local OPML file to include another OPML , which in my case is my OPML file that I have made available via the Internet. While River5 will actually use list files in TEXT and JSON formats, I am only aware of OPML supporting includes in the manner of how I am using them.

The net result is, when I add or remove a feed from the OPML file using Little Outliner that change is instantly reflected in the next run that River5 takes.

RSS feeds can disappear over time so occasionally I want to prune my subscription list of feeds that are no longer available. I am using a utility written by Dave Winer called checkFeedsInOpml .

I've cloned the repo to my Google Pixelbook and installed using npm. To run a check I enter the following:

node check.js >check.txt

I then open the file in a text editor and review the output. Entries with a 200 status code are checked out as being available, a 404 is that the feed is not available so I either remove it from my list or go back to the source site to see if it has been moved. A list of HTTP status codes are available on Wikipedia. webpage

## Backup I've written a script that curls a copy of my RSS subscriptions OPML to a local computer (rpi3) and I have created a cron job to run the script ever night at 23:30.