A Full, Comprehensive Guide to RSS/Atom

We got a lot of ground to cover so let’s get straight into this. If you want to know more about RSS, read my blog post about RSS.

Choose an RSS Reader.

This is your fist step. There are many RSS readers out there, but I have only used so many. In general, I recommend Raven Reader since their app is multi-platform (Windows, Mac, and Linux). NetNewsWire seems to be a decent choice for Mac and iOS fans. If you’re a “Power User” on Linux then you probably already know about Newsboat, but if not I fully recommend it, or it’s fork newsraft. Lastly, if you are on Android, then I would recommend Feeder.

As for what not to use, please do not use Feedly or anything proprietary. That is the one thing I would recommend not to do. RSS was built off of open source projects, and if it’s to succeed, it needs to stay that way. I could give you lots of reasons why it’s better to have things open source, but I’m just going to assume that you know already or don’t care.

If none of these suit your purposes for some reason, I would recommend looking for something on alternativeto.net.

RSS-Bridge

One of the best ways off the bat to get into RSS is to use RSS-Bridge, which is a webapp that can run on servers. Basically, you make your own (or use someone else’s) RSS-Bridge which will create RSS/Atom links for you. Hooray!

As of the time of writing, it isn’t flawless (the facebook bridge is pretty dead), but it’s been good for many things for me, including Bandcamp, GOG, Gitea, Soundcloud, and more!

That being said, should I list an official (or better) method below, I highly recommend you use that instead. While RSS-bridge is very useful, it’s been prone to bugs and generally speaking, individual sites’ RSS feeds are more optimized to show their content in general. It’s also nice not to have to rely on a middle-man’s server which could go down randomly without you knowing it.

Blogs and Podcasts: Look for Signs

Blogs and Podcasts are immediately some of the most likely candidates to have an RSS feed. Usually, this is found somewhere by looking for the RSS logo on the website. However, it’s worth noting that most blogs/podcasts already have an RSS feed built in. I’ve encountered this with nearly every one I’ve seen, even if the logo is nowhere to be found. If you want to know how you can find it, refer to the end section of this article about Raw HTML. Forums (Imageboards, Simple Machines Forums, etc.)

Typically, older forums will have some sort of RSS functionality so that you can parse the index of a board or topic very easily. The RSS link is typically at the bottom of the page, listed in the FAQ, or may have that handy RSS logo. If you can’t find it, I encourage you to refer to the end section of this article about Raw HTML.

LBRY/Odysee

I used to use a feed at https://lbryfeed.melroy.org until I figured out that Odysee had their own. The format is as follows:

https://odysee.com/$/rss/@[USERNAME]/[#]

The [USERNAME] and [#] parts are subject to change, based on what the URL of the channel is. For example, my Odysee channels URL is https://odysee.com/@the_extramundane:1, thus the corresponding RSS feed would be https://odysee.com/$/rss/@the_extramundane/1 (with [USERNAME] being what comes after the @ symbol and [#] being the number/letter after the colon.)

This method provides a stream link and parses ALL of the description of the video right in the convenience of your RSS Reader.

Github/Gitlab

If you want to see the latest commits for a Github or Gitlab project, then just follow the template below:

https://github.com/[USERNAME]/[REPO]/commits/master.atom

For example, https://github.com/theExtramundane/based.cooking/commits/master.atom, where theExtramundane is [USERNAME], and based.cooking is [REPO]. If you want releases, then go ahead and type in “releases” instead of “commits” in the URL.

If you just want to follow a particular user’s activity, then simply type in https://github.com/[USER].atom, where [USER] is the username of a Github account.

There is also an option to get a “private feed”, which can be done by logging into your Github account and scrolling to the bottom of your dashboard. This feed gives you events from people you follow with your Github account and repositories you watch (or star). Since this is obviously very dependent on an account-by-account basis, it goes without saying you can’t use this method without having a Github account of some kind.

All of what I’ve described here should work with Gitlab as well, with github.com obviously being changed to gitlab.com.

Instagram (via Bibliogram)

Like most social medias sites, Instagram has no native RSS support of any sort. However, there are alternative means for such things. Introducing…

Bibliogram!

How does it work? Well, simply put, Bibliogram is something you can run a server (or you can use someone else’s site) in order to access Instagram accounts through a different “front-end”. It’s basically an Instagram proxy, and better yet, it has Atom feeds. All you have to do is enter the username of the person you want to subscribe to in the search bar, and then click on the button where it says “Atom” on it in big letters.

You can find a list of instances here. Make sure that you pick an instance (i.e. “site”) that has feeds enabled.

UPDATE: As of September 1st, 2022, the Bibliogram project has been discontinued and all instances have been shut down.. The make things short, the only way to access any kind of RSS feed from Instagram accounts is via their private API, which requires personal setup. If you are interested, RSS-Bridge has provided their own documentation. For anyone who doesn’t have the know-how or doesn’t want to set that up, then let it be known that Instagram currently has no easy to way to generate or access an RSS feed.

R*ddit?

Well I don’t exactly know what you want from Reddit but ok. Regarding Reddit, there are actually a surprising amount of options. Reddit has actually kept a lot of RSS support for nearly every facet of their site. Most of it boils down to having a specific format appended with /.rss. For example, to get the frontpage of Reddit (🤮), simply type in https://reddit.com/.rss.

However, assuming you are a decent human being who does not browse the front page of Reddit, you probably just want to follow a select subreddit or two. Here’s a few ways how:

For an RSS feed of a subreddit with the “hot” sort order:

https://www.reddit.com/r/[SUBREDDIT]/.rss

For an RSS feed of a subreddit with a preferred sort order (E.g. “new”, “rising”, “controversial”, etc.):

https://www.reddit.com/r/[SUBREDDIT]/[SORT-ORDER]/.rss?sort=[SORT-ORDER]

You can even see specific user submissions by using their username:

https://www.reddit.com/user/[USERNAME]/submitted/.rss

There’s even an option to look at new comments in a single post on a subreddit, in case you need to keep up with a pinned/slow post:

https://www.reddit.com/r/[SUBREDDIT]/comments/[SIX-CHARACTER-POST-ID]/.rss

That character ID is in the URL of the post, so just look out for what looks like a bunch of random letters and/or numbers in between two slashes

Even more?

Yes, there are even more ways to use RSS feeds for Reddit, but for brevity’s sake (and because someone else already made it,) I’ll just link to the article right here.

Twitter (via Nitter)

I know that many a person would like to remove themselves from Twitter without missing the good stuff. Fortunately, there is a solution, much similar to Bibliogram, called Nitter, an alternative front-end to Twitter, which has RSS feeds. Simply go to a profile and you like and look for the RSS button in the top corner, as shown in the video below.

Alternatively, you can use this format as guide if you want a more manual approach:

https://[DOMAIN-NAME]/[USER]/rss

The [DOMAIN-NAME] is just the domain of the instance you’d like to use. For example, the official instance is nitter.net, so if I wanted to follow @NetHistorian ([USER]) on Twitter using nitter.net’s RSS feed, I would type in https://nitter.net/NetHistorian/rss.

A Word to the Wise…

I have to warn you a little when I say that (chances are) your feed will become bloated rather quickly if you follow a lot of Twitter feeds and such. This is partly just due to the nature of the site, but I wanted to mention it. Obviously, not everyone on Twitter posts every day and such but it’s worth keeping in mind. If you do it like I did, then you’re gonna see real quick who you like on Twitter and who you don’t.

YouTube

It’s true, YouTube still has RSS feeds, although you can’t find them explicitly. You’re gonna have to use another URL format.

Now, this method is a little more obtuse. When you are on a channel’s homepage, you are going to want to look at the URL, and hopefully, you will see that URL prepended with https://www.youtube.com/channel/… or https://www.youtube.com/user/…. After that, you should see a string of alphanumeric characters. If the URL has channel in it, then it’s a YouTube channel’s Channel ID. If it has user in it, then it’s a User ID. In order to make an RSS feed, we need the channel or user ID. Here’s the format:

https://www.youtube.com/feeds/videos.xml?channel_id=[CHANNEL-ID] https://www.youtube.com/feeds/videos.xml?user_id=[USER-ID]

If it wasn’t completely obvious, you insert the repsective channel/user ID into the URL, and that’s your RSS feed.

Workarounds with Invidious

Invidious, much like Bibliogram and Nitter, is an alternative YouTube front-end that allows you to watch YouTube videos on an instance. However, it’s rather buggy as of writing, and it isn’t really better than just using YouTube’s RSS feed outright, although it does offer it’s own. If YouTube removes it’s RSS functionality in the future (which is a decent possibility), then either this or using RSS-Bridge would probably be the next best thing.

However, while I wouldn’t vouch for Invidious’ own RSS capabilities, I will say that if you are having trouble finding the channel or user ID for your target, then searching for that channel in Invidious will usually result in the channel ID in the URL, as opposed to the usual user tag found in YouTube URLs nowadays. Just make sure you follow the above format when you put it in your RSS reader!

Sorting YouTube Channels

Another thing worth noting is that these IDs (at least in a file), have no names outright associated with them, at least not in URL form. In a file with all these URLs, it can be hard to sort and know which channels are which (especially if you have a lot of them). I guess this applies more to Newsboat users like myself or if you have dedicated URL file for your reader, but I just wanted to spread the good and say sort these using tags or comments or whatever you can, cause I should have.

CHEAT MODE ENGAGE

Finding a Feed in the Raw HTML Jungle

If you can’t find a feed outright on a site you think has it, (or even a site you don’t,) then you can do a final test and pull up the Raw HTML. Essentially, this is the source code of the site, and I mentioned this in my previous article about RSS. If you aren’t a techie person, don’t worry. It’s actually a lot more simple than you think!

Here’s the steps in order:

1 Go into a web browser and bring up the website of something you want to keep tabs on. It could be an official craft soda website, some random blog, or a software project you want to know more about.

2 Press Ctrl+u on you keyboard. You should have a new tab open with Raw HTML code. If you are seeing a lot of angle-brackets (< >), then you are in the right place.

3 Press Ctrl+f on your keyboard. This will give you a webpage search prompt. Try typing in the following words in the search bar:

If you come up short with any of these keywords, then chances are this website doesn’t have RSS.

Conclusion

I hope you found this guide very helpful. If you did, consider subscribing to my RSS feed. I have more plans to further people’s knowledge of RSS, but for now I’d say this about raps it up. I hope that RSS gives you more time to look at what you like, and less time getting distracted by things that don’t matter as much.