Home > maz.org

maz.org

Maz.org is a project mainly written in ..., it's free.

maz.org web site

I'm Brian. This is the source code for my web site.

h2. How it works

The feed aggregator ("feed monster", a name stolen from my "employer":http://outside.in) that hits a number of services every 15 minutes, either fetching an Atom or RSS feed or using a custom API, depending on the service. Whatever data is pulled down gets dumped into a "MongoDB":http://mongodb.org collection, normalized as "activities".

The Rails front end just pulls the most recent activities from the collection and shows them in reverse chronological order. Rails is way overkill for this, but part of the exercise was learning how to use "MongoMapper":http://mongomapper.com.

h2. Services to add

  • Last.fm
  • LinkedIn?
  • Netflix
  • Yelp?
  • Goodreads
  • Buzz - http://code.google.com/apis/buzz/documentation/

h2. Features to add

  • Exception notification
  • Conditional method support for feed fetching
  • Preview urls in Tweets
  • Lightbox or otherwise display blog posts
  • Popout video players
  • Audio players
  • Activity feed
  • Add updates to the stream without having to refresh the page
    • WebSockets
    • Long-polling Comet with node.js?
  • Incorporate new activities into the database as they occur without having to constantly poll feeds
    • PubSubHubbub
  • Search across activities
  • Page through older activities

h2. Bugs to fix

  • Pub date of Reader shared link is the pub date of the page, not when I shared it