Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zapnap/mogofeed

A planet-style feed aggregator built in Ruby with Sinatra and DataMapper
https://github.com/zapnap/mogofeed

Last synced: about 2 months ago
JSON representation

A planet-style feed aggregator built in Ruby with Sinatra and DataMapper

Awesome Lists containing this project

README

        

= MogoFeed: A Planet-Style Feed Aggregator

MogoFeed combines multiple news feeds (or feed topic searches) into a single web page view, much like a typical "Planet"-style feed aggregator. It's built in Ruby on top of Sinatra and DataMapper.

== Configuration

Dependencies and all configuration is done in environment.rb. Your database is also set up here. DataMapper will use sqlite3 by default. Tests use the sqlite3-memory adapter (no configuration needed).

== Getting Started

rake db:migrate
rake feeds:add URL=http://blog.zerosum.org
rake feeds:update
ruby application.rb

== Adding Feeds

Use the web interface located at /admin to add and remove feeds. Accessing this URL will require a username and password. These settings are adjustable in environment.rb; the defaults are 'admin' and 'password'.

You can also add feeds directly from the command line:

rake feeds:add URL=http://blog.zerosum.org

== Status Updates

Run rake feeds:update to update the cached feeds. You can schedule this as a cron job to fire every few minutes if you like.

== Searching

We use Sphinx for full-text indexing and search. Therefore, you'll need to have it installed. You can find downloads and installation instructions at http://www.sphinxsearch.com.

To enable search in MogoFeed, set the option in environment.rb. Search is disabled by default. I've only tested search with MySQL, so set your database connection string to a MySQL database you'll create (default: 'mogo' with user 'root'). Feel free to tune the sample configuration provided in sphinx.conf to your taste. You probably won't want to use a passwordless root user in a production environment ;-).

Once that's done, go ahead and run the supplied Rake tasks to get up and running:

rake sphinx:reindex # update the search indexes; you'll probably want to schedule this periodically
rake sphinx:search:start # start it up
rake sphinx:search:stop # shut it down

You should now be able to run application.rb and use the rudimentary search interface.