GitHunt
BL

A ruby gem to find similar patterns and offer recommendations

= Similus

Similus is a Ruby library that allows to find similar objects and recommendations using generated activity.
Examples of usage:

  • Find similar articles based on what other users also viewed.
  • Recommend articles to users based on their activity.

== Authors

{Horaci Cuevas}[http://github.com/horaci] horaci@gmail.com

{Robert R. Meyer}[http://github.com/Blue-Dog-Archolite] Blue.Dog.Archolite@gmail.com

== Quick overview

  • Setup
  • Store activity
  • Show similar objects
  • Show recommended objects

== Setup

Before using Similus, you need to setup the redis configuration. In rails this can be done inside a preinitializer in the config/preinitializers folder.

Similus.config do |config|
config.backend = :redis
config.redis_host = "localhost"
config.redis_port = "6379"
config.redis_username = "myredisuser"
config.redis_password = "Password"
config.redis_db = 8
end

=== Store activity

Locate where you want to store activity. For example, in Ruby on Rails, inside the show method of the ArticlesController class:

class ArticlesController < ApplicationController
def show
@Article = Article.find(params[:id])
Similus.add_activity(current_user, :show, @Article)
end
end

=== Show similar objects

Once there is some activity stored by users, you can query for similar objects:

class ArticlesController < ApplicationController
def show
@Article = Article.find(params[:id])
@similar_articles = Similus.similar_to(@Article)
end
end

=== Show recommended objects

Even better than just showing similar articles, show recommended articles for the user's previous activity when there is a logged in user:

class HomeController < ApplicationController
def index
@recommended_articles = Similus.recommended_for(current_user)
end
end

== Configuring and installing Similus

As of current version, Similus only supports redis backend.

Install Redis 2.0 from [http://code.google.com/p/redis/] and start the server.

Install the Similus gem:

gem install similus

== License

Copyright (c) 2010 Horaci Cuevas

See LICENSES for details.

Languages

Ruby100.0%

Contributors

Created April 10, 2013
Updated April 10, 2013
Blue-Dog-Archolite/similus | GitHunt