We are still actively working on the spam issue.
Difference between revisions of "RSS"
(Fleshed out RSS page) |
(→GNU/Linux: Add sfeed) |
||
(6 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{stub}} | {{stub}} | ||
− | '''RSS''' stands for '''R'''eally '''S'''imple '''S'''yncication (formerly '''R'''ich '''S'''ite '''S'''ummary for Version 0.9 and '''R'''DF '''S'''ite '''S'''ummary for RSS Version 1.0). It | + | '''RSS''' stands for '''R'''eally '''S'''imple '''S'''yncication (formerly '''R'''ich '''S'''ite '''S'''ummary for Version 0.9 and '''R'''DF '''S'''ite '''S'''ummary for RSS Version 1.0). It's a XML-based data format used for the purpose of distributing and aggregating web content in an open, decentralized manner. Creation started in late 1990s and was finalized in early to mid-2000s after multiple attempts at web syndication from web standards groups which included individuals like Ramanathan V. Guha and the late Aaron Schwartz. Was pretty popular before fading with the rise of the modern web 2.0. It is too complicated for the typical, tech-illiterate Zoomer to understand, so only oldfags and based /g/entoomen use it these days. It, however, can be extremely useful for things like keeping track of [[Youtube]] subscriptions without a Google account and [[Bittorrent| torrent]] releases if (You) are a [[Private_trackers|/ptg/]] fag and need to keep a seed ratio. A feed reader (sometimes also called feed aggregator, content aggregator, news reader, or RSS reader) is an application that uses RSS feeds to track the content of multiple, user-added websites through a single application with a uniform interface. It basically boosts productivity by reducing the need to constantly visit websites for their content like online news articles individually in a browser. Atom is a near identical competing data format for web feeds that you might read/see a lot when it comes to feed readers as it is often mixed up with RSS. In fact, most feed readers handle/treat RSS and Atom the same. Long story short, it was created to address some issues and concerns with the original RSS which was fixed with RSS 2.0. While its a good format it never got as much traction. |
== How to use RSS == | == How to use RSS == | ||
=== Finding RSS === | === Finding RSS === | ||
− | A bit of an old and often hidden feature as many sites have/had a dedicated rss feed but don't make it known. Mostly for nefarious reasons as well as it not being common anymore. Many organizations want users to visit their bloated, botnet, algorithm-heavy, proprietary Javascript ridden site to make/sign in to an account or subscribe via email for revenue, greater marketing pull and data collection purposes. For instance, in the very beginning, Twitter used to support RSS until the company grew larger. Jack Dorsey and other top executives at Twitter realized that it hurts sign-ins which means less ad revenue so they took it away. Overall, RSS allowed a decentralized way of keeping track of content which is antithetical to modern attention economy. There are many ways to find an RSS feed. First is to look on the actually website for a link. There is usually a link that says Feed or RSS that is often in the footer, side menu, navigation bar, or description. If not, look out for a RSS icon button. There are times where it may download a .rss or .xml file. Not all feed readers support adding sources through a file so just open it in a text editor and copy the main feed url. Sometimes, you can find it in the page's source code within the {{ic|<head></head>}} tag. Open source code {{ic|(Ctrl + U)}}, use find ({{ic|Ctrl + F}} or {{ic|Ctrl + G}}), then type in rss, feed, or atom. When that doesn't work, just use a search engine and type the domain name with rss or feed. If none of those option worked out then try to find it in a RSS directory like [https://rss.feedspot.com FeedSpot] or [https://rss-bridge.org/bridge01/ RSS Bridge]. Lastly, sometimes you can just brute force it by adding /rss/,/feed/, or /news/ to the end of the index or article page like so {{ic| domainname.tld -> domainname.tld/feed/ }}. Most of the time it uses /feed/ since that is the default for most website building software. Works most of the time. W3's [https://validator.w3.org/feed/check.cgi RSS Feed Validator] helps verify the link can be used as a feed. Once you have a link, head over to one of the clients listed below and add it as a source. | + | [[File:Rss icon.png||thumb||Common RSS icon]] |
+ | A bit of an old and often hidden feature as many sites have/had a dedicated rss feed but don't make it known. Mostly for nefarious reasons as well as it not being common anymore. Many organizations want users to visit their bloated, botnet, algorithm-heavy, proprietary Javascript ridden site to make/sign in to an account or subscribe via email for revenue, greater marketing pull and data collection purposes. For instance, in the very beginning, Twitter used to support RSS until the company grew larger. Jack Dorsey and other top executives at Twitter realized that it hurts sign-ins which means less ad revenue so they took it away. Overall, RSS allowed a decentralized way of keeping track of content which is antithetical to the modern attention economy. There are many ways to find an RSS feed. First is to look on the actually website for a link. There is usually a link that says Feed or RSS that is often in the footer, side menu, navigation bar, or description. If not, look out for a RSS icon button as seen above. There are times where it may download a .rss or .xml file. Not all feed readers support adding sources through a file so just open it in a text editor and copy the main feed url. Sometimes, you can find it in the page's source code within the {{ic|<head></head>}} tag. Open source code {{ic|(Ctrl + U)}}, use find ({{ic|Ctrl + F}} or {{ic|Ctrl + G}}), then type in rss, feed, or atom. When that doesn't work, just use a search engine and type the domain name with rss or feed. If none of those option worked out then try to find it in a RSS directory like [https://rss.feedspot.com FeedSpot] or [https://rss-bridge.org/bridge01/ RSS Bridge]. Lastly, sometimes you can just brute force it by adding /rss/,/feed/, or /news/ to the end of the index or article page like so {{ic| domainname.tld -> domainname.tld/feed/ }}. Most of the time it uses /feed/ since that is the default for most website building software. Works most of the time. W3's [https://validator.w3.org/feed/check.cgi RSS Feed Validator] helps verify the link can be used as a feed. Once you have a link, head over to one of the clients listed below and add it as a source. Make sure to add some of /g/'s [[Tech News Sites]]. | ||
=== Integrating RSS to website === | === Integrating RSS to website === | ||
Line 15: | Line 16: | ||
<title>Example Website</title> | <title>Example Website</title> | ||
<link>https://www.example.com</link> | <link>https://www.example.com</link> | ||
− | <description> | + | <description>Example Website Details</description> |
<item> | <item> | ||
<title>Post 1</title> | <title>Post 1</title> | ||
Line 30: | Line 31: | ||
</rss> </nowiki>}} | </rss> </nowiki>}} | ||
For more, visit [https://www.rssboard.org/rss-specification the official RSS specifications page]. W3School's has a useful [https://www.w3schools.com/xml/xml_rss.asp XML tutorial for RSS]. | For more, visit [https://www.rssboard.org/rss-specification the official RSS specifications page]. W3School's has a useful [https://www.w3schools.com/xml/xml_rss.asp XML tutorial for RSS]. | ||
− | You can make a server-side script to automatically add or change the xml content when new content is updated instead of doing it manually. | + | You can make a server-side script to automatically add or change the xml content when new content is updated instead of doing it manually. As said before, most site generators help you do this as well. |
== Recommended RSS Clients == | == Recommended RSS Clients == | ||
− | RSS software that /g/ uses that isn't botnet. | + | RSS software that /g/ uses that isn't botnet. |
=== GNU/Linux === | === GNU/Linux === | ||
Line 39: | Line 40: | ||
Graphical Interface: | Graphical Interface: | ||
* [https://lzone.de/liferea/ Liferea] - '''Li'''nux '''Fe'''ed '''Rea'''der is a featureful graphical feed reader for the Linux desktop. Written in C with support for plugins that are written in Python. It features reading articles offline, playing podcasts, and synchronizing with multiple cloud services (including the self-hosted [[TinyTinyRSS]]). | * [https://lzone.de/liferea/ Liferea] - '''Li'''nux '''Fe'''ed '''Rea'''der is a featureful graphical feed reader for the Linux desktop. Written in C with support for plugins that are written in Python. It features reading articles offline, playing podcasts, and synchronizing with multiple cloud services (including the self-hosted [[TinyTinyRSS]]). | ||
− | * [https://www.thunderbird.net/ Mozilla Thunderbird] - Email client that has an RSS feed reader built in. | + | * [https://www.thunderbird.net/ Mozilla Thunderbird] - Email client using Mozilla's Gecko engine that has an RSS feed reader built in. |
* [https://www.qbittorrent.org/download.php qBittorrent] - As well as being a BitTorrent client, qBittorrent can be used to track RSS feeds and can auto-download torrent links from the feed. | * [https://www.qbittorrent.org/download.php qBittorrent] - As well as being a BitTorrent client, qBittorrent can be used to track RSS feeds and can auto-download torrent links from the feed. | ||
* [https://quiterss.org/ QuiteRSS] - A GPLv3 cross-platform RSS/Atom feed reader based on Qt toolkit. Can be quite slow but auto converts YouTube channel links to RSS feeds. (Likely abandoned but still works) | * [https://quiterss.org/ QuiteRSS] - A GPLv3 cross-platform RSS/Atom feed reader based on Qt toolkit. Can be quite slow but auto converts YouTube channel links to RSS feeds. (Likely abandoned but still works) | ||
Line 54: | Line 55: | ||
* [https://github.com/TypicalAM/goread GoRead] - RSS/Atom feed reader written in Go using the Bubble Tea tui framework which is also written in Go. | * [https://github.com/TypicalAM/goread GoRead] - RSS/Atom feed reader written in Go using the Bubble Tea tui framework which is also written in Go. | ||
* [https://github.com/veeso/tuifeed TUIFeed] - Experimental, simple cli RSS feed reader made in Rust. | * [https://github.com/veeso/tuifeed TUIFeed] - Experimental, simple cli RSS feed reader made in Rust. | ||
+ | * [https://codemadness.org/git/sfeed/file/README.html sfeed] - Suckless-style feed parser, it converts RSS or Atom feeds from XML to a TAB-separated file. Highly scriptable, comes with a bunch of utilities like a frontend based on ncurses and a sfeed-to-HTML formatter. | ||
Self-Hosted/Web based: | Self-Hosted/Web based: | ||
Line 62: | Line 64: | ||
* [https://github.com/stringer-rss/stringer Stringer] Describes itself as a self-hosted, anti-social RSS reader. Made with Ruby using Ruby on Rails framework. It has no external dependencies, no social recommendations/sharing, and no fancy machine learning algorithms. | * [https://github.com/stringer-rss/stringer Stringer] Describes itself as a self-hosted, anti-social RSS reader. Made with Ruby using Ruby on Rails framework. It has no external dependencies, no social recommendations/sharing, and no fancy machine learning algorithms. | ||
* [https://github.com/nkanaev/yarr YARR] - '''Y'''et '''A'''nother '''R'''SS '''R'''eader. Minimal web server based reader written in Go using SQLite. | * [https://github.com/nkanaev/yarr YARR] - '''Y'''et '''A'''nother '''R'''SS '''R'''eader. Minimal web server based reader written in Go using SQLite. | ||
− | * [https://sr.ht/~cedric/newspipe/ NewsPipe] - Web news aggregator platform. Set up an instance in which multiple users can connect. Written in Python. The core technologies are Flask, asyncio and SQLAlchemy. Can be built/compiled to use PostgreSQL | + | * [https://sr.ht/~cedric/newspipe/ NewsPipe] - Web news aggregator platform. Set up an instance in which multiple users can connect. Written in Python. The core technologies are Flask, asyncio and SQLAlchemy. Can be built/compiled to use PostgreSQL |
+ | * [https://github.com/Athou/commafeed/ CommaFeed] - Simple bloat-free web feed reader written in Java. | ||
=== Android === | === Android === | ||
Line 69: | Line 72: | ||
* [https://github.com/Ashinch/ReadYou Read You] - An Android RSS reader presented in Material You style. Available on [https://f-droid.org/packages/me.ash.reader/ F-Droid]. | * [https://github.com/Ashinch/ReadYou Read You] - An Android RSS reader presented in Material You style. Available on [https://f-droid.org/packages/me.ash.reader/ F-Droid]. | ||
− | === | + | === iOS/iPadOS === |
+ | |||
* [https://netnewswire.com/ NetNewsWire] - Free and open source, RSS feed reader for itoddlers. One of the longest maintained for Apple platforms. Has the complete feature set of the average, standand news reader. | * [https://netnewswire.com/ NetNewsWire] - Free and open source, RSS feed reader for itoddlers. One of the longest maintained for Apple platforms. Has the complete feature set of the average, standand news reader. | ||
Latest revision as of 03:44, 10 April 2024
RSS stands for Really Simple Syncication (formerly Rich Site Summary for Version 0.9 and RDF Site Summary for RSS Version 1.0). It's a XML-based data format used for the purpose of distributing and aggregating web content in an open, decentralized manner. Creation started in late 1990s and was finalized in early to mid-2000s after multiple attempts at web syndication from web standards groups which included individuals like Ramanathan V. Guha and the late Aaron Schwartz. Was pretty popular before fading with the rise of the modern web 2.0. It is too complicated for the typical, tech-illiterate Zoomer to understand, so only oldfags and based /g/entoomen use it these days. It, however, can be extremely useful for things like keeping track of Youtube subscriptions without a Google account and torrent releases if (You) are a /ptg/ fag and need to keep a seed ratio. A feed reader (sometimes also called feed aggregator, content aggregator, news reader, or RSS reader) is an application that uses RSS feeds to track the content of multiple, user-added websites through a single application with a uniform interface. It basically boosts productivity by reducing the need to constantly visit websites for their content like online news articles individually in a browser. Atom is a near identical competing data format for web feeds that you might read/see a lot when it comes to feed readers as it is often mixed up with RSS. In fact, most feed readers handle/treat RSS and Atom the same. Long story short, it was created to address some issues and concerns with the original RSS which was fixed with RSS 2.0. While its a good format it never got as much traction.
Contents
How to use RSS
Finding RSS
A bit of an old and often hidden feature as many sites have/had a dedicated rss feed but don't make it known. Mostly for nefarious reasons as well as it not being common anymore. Many organizations want users to visit their bloated, botnet, algorithm-heavy, proprietary Javascript ridden site to make/sign in to an account or subscribe via email for revenue, greater marketing pull and data collection purposes. For instance, in the very beginning, Twitter used to support RSS until the company grew larger. Jack Dorsey and other top executives at Twitter realized that it hurts sign-ins which means less ad revenue so they took it away. Overall, RSS allowed a decentralized way of keeping track of content which is antithetical to the modern attention economy. There are many ways to find an RSS feed. First is to look on the actually website for a link. There is usually a link that says Feed or RSS that is often in the footer, side menu, navigation bar, or description. If not, look out for a RSS icon button as seen above. There are times where it may download a .rss or .xml file. Not all feed readers support adding sources through a file so just open it in a text editor and copy the main feed url. Sometimes, you can find it in the page's source code within the <head></head>
tag. Open source code (Ctrl + U)
, use find (Ctrl + F
or Ctrl + G
), then type in rss, feed, or atom. When that doesn't work, just use a search engine and type the domain name with rss or feed. If none of those option worked out then try to find it in a RSS directory like FeedSpot or RSS Bridge. Lastly, sometimes you can just brute force it by adding /rss/,/feed/, or /news/ to the end of the index or article page like so domainname.tld -> domainname.tld/feed/
. Most of the time it uses /feed/ since that is the default for most website building software. Works most of the time. W3's RSS Feed Validator helps verify the link can be used as a feed. Once you have a link, head over to one of the clients listed below and add it as a source. Make sure to add some of /g/'s Tech News Sites.
Integrating RSS to website
Most Content Management Systems/Website builders, usually out of the box but sometimes through plugins, creates and handles RSS automatically with customizable settings. Examples include Hugo, Jekyll, Ghost, Gatsby.js, Django, and WordPress. Otherwise, if (You) want to add RSS manually or change it on a website, knowing XML is required. XML is a markup language that defines structure like HTML so it isn't difficult to learn. Below is an example of what you're XML file should look like.
<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0"> <channel> <title>Example Website</title> <link>https://www.example.com</link> <description>Example Website Details</description> <item> <title>Post 1</title> <link>https://www.example.com/...</link> <description>...abc...</description> </item> <item> <title>Post A</title> <link>https://www.example.com/...</link> <description>???xyz???</description> </item> </channel> </rss>
For more, visit the official RSS specifications page. W3School's has a useful XML tutorial for RSS. You can make a server-side script to automatically add or change the xml content when new content is updated instead of doing it manually. As said before, most site generators help you do this as well.
Recommended RSS Clients
RSS software that /g/ uses that isn't botnet.
GNU/Linux
Graphical Interface:
- Liferea - Linux Feed Reader is a featureful graphical feed reader for the Linux desktop. Written in C with support for plugins that are written in Python. It features reading articles offline, playing podcasts, and synchronizing with multiple cloud services (including the self-hosted TinyTinyRSS).
- Mozilla Thunderbird - Email client using Mozilla's Gecko engine that has an RSS feed reader built in.
- qBittorrent - As well as being a BitTorrent client, qBittorrent can be used to track RSS feeds and can auto-download torrent links from the feed.
- QuiteRSS - A GPLv3 cross-platform RSS/Atom feed reader based on Qt toolkit. Can be quite slow but auto converts YouTube channel links to RSS feeds. (Likely abandoned but still works)
- Akregator - KDE's RSS reader, part of the Kontact PIM suite.
- Fluent Reader - Modern, cross-platform RSS/Atom feed reader with an elegant UI. Open source with privacy enhancing features. Only major downside is that it is not minimal. It uses Electron, Fluent UI, React for its stack so it is more intensive on resources than other options.
- NewsFlash - Rewrite/Spiritual successor to FeedReader by the same author in GTK4 and Rust. Mostly designed to be a desktop client that complements an already existing web-based feed reader.
- RSSGuard - GPLv3, Qt based RSS/Atom feed reader that works on Windows, Linux, BSD, OS/2 and macOS. Works well with RSS cloud services. Can also function as a podcast player with built-in media player that uses ffmpeg or mpv/libmpv depending on build and platform. The /g/entooman's favorite GUI RSS feed reader.
- Raven Reader - Simple and elegant, cross platform, desktop feed reader. Customizable and works with RSS cloud services. Made with Electron and Vue.
Command Line Interface/Text based:
- Emacs Elfeed - Emacs RSS feed reader.
- Newsboat - Text based terminal client for RSS and Atom. Fork of Newsbeuter because that is now abandoned. Uses simple config and supports macros. The /g/ choice.
- Newsbeuter -
A text-based terminal client for RSS and Atom feeds, with a simple conf file.(Abandoned) - GoRead - RSS/Atom feed reader written in Go using the Bubble Tea tui framework which is also written in Go.
- TUIFeed - Experimental, simple cli RSS feed reader made in Rust.
- sfeed - Suckless-style feed parser, it converts RSS or Atom feeds from XML to a TAB-separated file. Highly scriptable, comes with a bunch of utilities like a frontend based on ncurses and a sfeed-to-HTML formatter.
Self-Hosted/Web based:
- FreshRSS - Self-hosted RSS and Atom feed aggregator made with PHP. It is lightweight, easy to work with, powerful, and customizable. One of the oldest options.
- TinyTinyRSS - Free and open source web-based news feed reader and aggregator. Very customizable with support for plugins. One of the most popular web-based options. Requires Docker and a browser.
- Miniflux - Relatively new self hosted option for a feed reader. Describes itself as opinionated because as its name implies, its programming philosophy is to be minimal. It is very lightweight, fast and efficient.
- Selfoss - The ultimate multi-purpose RSS reader, data stream, mash-up, aggregation web application. Basically a near universal aggregator.
- Stringer Describes itself as a self-hosted, anti-social RSS reader. Made with Ruby using Ruby on Rails framework. It has no external dependencies, no social recommendations/sharing, and no fancy machine learning algorithms.
- YARR - Yet Another RSS Reader. Minimal web server based reader written in Go using SQLite.
- NewsPipe - Web news aggregator platform. Set up an instance in which multiple users can connect. Written in Python. The core technologies are Flask, asyncio and SQLAlchemy. Can be built/compiled to use PostgreSQL
- CommaFeed - Simple bloat-free web feed reader written in Java.
Android
- Feeder - FOSS material design RSS/Atom feed reader. Available on F-Droid.
- Read You - An Android RSS reader presented in Material You style. Available on F-Droid.
iOS/iPadOS
- NetNewsWire - Free and open source, RSS feed reader for itoddlers. One of the longest maintained for Apple platforms. Has the complete feature set of the average, standand news reader.
External links
- List of RSS applications on the Arch Wiki.
- RSS Specification for RSS 2.0.
- Harvard's RSS Specification
- RSS Feed Validator for checking if a URL uses RSS.
- RSS Bridge which creates RSS feeds for sites that normally don't have it. Main instance.
- W3School's XML RSS tutorial.
- ALL about RSS is a popular github repository that teaches a lot about RSS and related applications and technologies.