WebFeed: Turn browser into feed reader

2022-07-17 ⏳2.3 min(0.9k words) 🕸️

While the Internet is becoming more and more centralize, the open web feed technology like RSS and Atom is becoming less popular. People tends to share their article by the closed platform like Facebook or Twitter instead of independent blog with RSS or Atom. But why? Why the open technology are of no better than the closed one? I think one most signifiant advantage of the closed platform is their better use experience. It is not easy to subscribe a blog with web feed. This is why I develop the WebFeed browser extension, by which you can turn your browser into a simple feed subscriber and reader. And then the use experience of web feed like RSS or Atom will be more friendly.

But there are so many feed reader extension, why do you want to invent another one? Because I need a feed reader with the following characteristics:

Thanks for the RSS Autodiscovery, it is not a complex task to find the web feed automatically. All we need to do is add the following meta information the header of web page:

<link rel="alternate"
      type="application/atom+xml"
      title="RSS"
      href="https://taoshu.in/feed.xml">

The type property should be filled by the MIME type of RSS or Atom, which are application/rss+xml and application/atom+xml respectively.

Almost all the feed reader extension implment this feature in the same manner. In WebFeed, if you browse a web page with RSS or Atom, you will fond a RSS icon in your address bar:

WebFeed will discover RSS/Atom automatically.

This only works in Firefox. Because the Chrome has merge the browser action and page action, what we can do is display only one browser action icon, and change its color when web feed has been detected.

WebFeed for Chrome only show one icon

In Chrome, if there is no web feed founded, the color of icon is black. And it will change to orange when found RSS or Atom.

If you want to subscribe this feed, you can click the address icon(for Firefox) or browser icon(for Chrome). And WebFeed will open a view page:

WebFeed displays the detail of RSS or Atom

In the view page, you will fond the web site’s tile, domain, and feed items. There is also a subscribe button. Only one click will subscribe the new updates of this site.

As we subscribe some web site, what the following task is to check the content updates. As I have said before, WebFeed does not dependend any server side service. It just store all the subscribtions in your browser, and run the update check process in the browser periodically.

Thanks to the Alarms API, by which WebFeed could check web feeds periodically. Once WebFeed found new updats, it will display the number of new items in the browser action icon. And the badge on the icon is a signal of new updates.

WebFeed finds new udpates

If you are a Firefox user, you can simply click the icon with badge, and WebFeed will open a Twitter like feed list page:

WebFeed’s feed list page

All the updates will be sorted by the update order and subscription dates, decendingly. You will see the title, date and subject of the update. If you want to read the full content, you have to click the read more link, and go to the original web site. WebFeed will only display the subject of the update. Even if the author output the full article content, WebFeed will only display a short part of it. In this way, all subscriber who want to read the full content must go to the original web site.

If you use the Chrome, you will encounter wieird issue. As Chrome does not allow extension have both page action icon and brower action icon. WebFeed have to use one browser action icon to indicate new feed update and feed auto discovery.If a page exports more feeds, WebFeed has to display a popup window to let user select. So in Chrome, if there is no feed found in the current page, click of the browser icon will open the feed list page. If WebFeed found one feed, you will get a popup window. And the first item is “My Feeds(html)”, click which will open the feed list. So I recommend to use the Fireox browser😄

If you do not want to subscribe some feed, just click the domain name in the feed list. And you will see the detail page you saw before your subscription. A unsubscribe button is there.

So this WebFeed, a simple browser only feed reader. WebFeed is not a perfect feed reader, but it is a good start to make a more free web. You can install WebFeed from the Firefox ADD-ONs or Chrome Web Store. And all the code have been published in the GitHub under the MIT license. Please feel free to file issue for any useage problem or feature advice. Welcome to join the development of WebFeed. Thank you.