PyFeedReader, a Python RSS/Atom reader

Last week Google announced that they are shutting down Google Reader. For those who are not familiar with feed readers, it is a very organized and useful way of subscribing to websites and reading the content published. Google claims that Reader's features are in Google+ and other social media, to some degree that is true, but feed readers are much more organized and you can read long articles displayed properly without even going to the website. Publishers today tend to write short spammy statuses to get people to visit the site, some feeds are like this as well but they are just so much easier to read. A feed reader is just a so much better way to stay up to date than social media, that is the bottom line.

After trying several alternatives for Google Reader I was left disappointed, none of them was as good as Google Reader, some were almost as good, especially The Old Reader, it is actually a Google Reader "clone", but sadly it lacks a Android app. Netvibes was also a good reader once you manage to find the part of it which is actually the reader, and not all the other fancy unnecessary stuff. Apparently it has a Android app, but I could not find it in the Android marketplace, so that one is a no go as well.

So I decided to go ahead and create my own reader. I have wanted to make some web application for some time, but I have never really had an idea which gave me motivation to do something, but now I do.

I started out with the back end for the back end, which is the application which will fetch new entries from feeds and store them in a database, so I created FeedServer. Currently it is working nicely on it's own, there is a description of how it works in the readme file on GitHub, so I won't get into it here.

Yesterday I started on the web application part of the project, for this I am using Python and Flask, the decision to go with Flask is because I have briefly made something with it before, and I can get started quickly then. This is the first web application I have ever made, where I actually have done something in the front end as well, I have done some web stuff before in the group project we had in CS2210, but I was mostly working with the back end stuff then, and only briefly touched some of the web parts. To my own surprise working with Flask, CSS, and HTML was not as hard as I thought it was going be, and I thing the results so far is quite good looking compared to the web stuff I have done before. Below are some screenshots of whats done so far.

Alt text

Alt text

Create Account, and Login page are functional and working. The home page with the feeds is just a HTML prototype so far. I am going to try to do some graphical design for the project, but if turns out to horrible I will try to locate some free graphics. I also have an idea of a shortcut to get it available for mobile devices as well, but thats for later.

My goals with the main page are:

  • Folder icons for the feed folders (categories).
  • Displaying the feed's favicon to the left of it.
  • Having a share bar for each feed entry.
  • A small banner at the top.
  • A settings icon.
  • Keyboard navigation of the page with JavaScript.

The two parts of the project are split into two applications, FeedServer, and PyFeedReader, where the last one is the web application. PyFeedReader is also on GitHub.