Drop it in. Chop it up. Drink it down.

FeedBlender is a one-file script for aggregating a list of syndicated feeds into one syndication feed. This comes in handy at situations like conferences, where you can quickly corral a bunch of RSS feeds into a single RSS feed that conference attendees can subscribe to. FeedBlender is designed to get you up and running with a minimum of configuration.


  1. Ruby 1.8.2 or later
  2. FeedBlender should work on Linux, OS X, or any other Unix. Because it relies on crontab, it doesn’t currently work on Windows.


FeedBlender 0.1.0 will only work with RSS; it can’t handle Atom yet. That will be fixed soon.


It’s pretty easy:

  1. Download feedblender.rb from here.
  2. Type ./feedblender.rb

FeedBlender will then start up, and it will interactively ask you a few questions about your configuration.

That’s it!

Inner workings


When you run FeedBlender for the first time, it prompts you for some settings. There are five basic settings that absolutely need to be specified, and five more advanced settings that you can set or leave the default.

Basic settings

Setting Description Default
work directory FeedBlender needs a directory for storing the configuration file and other information. The default should work fine for almost anything. However, if you’re running FeedBlender to generate more than one feed with the same user account, you should make sure that each blended feed has a different work directory. ~/.feedblender
feeds to check Enter the list of feed URIs here. Currently, FeedBlender only supports RSS, but Atom support is planned in the near future.
output file This is the location of the output feed on your server. /var/www/html/blended.rss (/var/www/html/ is, I believe, the web root on the standard Apache install.)
title The title of your feed. On most RSS aggregators, this is the text that will be used to identify the feed itself.
link The home URI of the organization or person who is responsible for the feed. This is probably just http:// followed by your domain name.

Advanced settings

These settings can all be ignored, but you may want to specify them for more fine-grained control.

Setting Description Default
webmaster A public email address that feed subscribers can use to contact you if they’re having any problems with your feed.
description A textual description of the feed. “This blended feed is generated automatically by FeedBlender.”
feed item length How many items are to be included in the feed. 50
time to refresh How many minutes FeedBlender should wait before checking all the feeds. 30
logfile The name of a file to log to. If this is left blank, FeedBlender won’t log anything.

What’s happening behind the scenes?

The first time you run FeedBlender, it asks you for settings and then creates a configuration file, saving it in the work directory as config. It also edits your crontab, adding a line that will look like this:

*/30 * * * * /usr/local/bin/ruby /Users/francis/Desktop/feedblender.rb --config /Users/francis/.feedblender/config

For future runs, the crontab passes the config file to feedblender.rb.

There isn’t currently any quick way to stop FeedBlender from refreshing; to do that you’ll have to edit the crontab with crontab -e.


FeedBlender is by Francis Hwang, and is available under the LGPL.

Last edited January 23, 2005