Easy to Learn

Learn Facets as you program, these resources make it a snap. Hook up with other users and broaden the scope of your usage. Ruby Facets has a moto, "All Base Common".



Facets can be dowloaded and installed easily using RubyGems:

$ gem install facets

Gems will automatically generate rdocs on installation. Unfortunately the Gem generated rdocs are very poor --in fact Facets only allows them to be generated to ensure the creation of ri docs (ruby api index files). We recommend instead that you use the pre-generated rdocs on the website.

Site Install

If you would like to install from source, you can download the tarball package from GitHub and use Ruby Setup, e.g.

$ tar -xvzf facets-2.9.0.tgz
$ cd facets-2.9.0
$ setup.rb

The last step may require super-user permissions (eg. use sudo).

Of course, to use Facets you also need Ruby. The 2.x versions of Facets are designed to work with Ruby 1.8.6 and up. Facets is fully compatible with Ruby 1.9.

API Documentation

Facets API is divided into two documentation sets, one for core extensions, and anther for standard library extensions and additions.

Core API

The CORE API (alt) includes all the "prime" extensions. These methods are at the heart of Facets. Any application or library that makes use of Facets, you can be sure, supports these methods. Also include is the Functor class, which is a Higher Order Message class. It is used by a number of methods to provide fluid interfaces.

Standard API

The STANDARD API (alt) documents the variety of extension methods to Ruby's standard library, and additional classes and modules Facets provides as optional libraries.


The Wiki is a place for end-users to create their own documentation. Ultimately, it is hoped, this documentaiton will make a great source for sharing real-world use cases. However, a full Wiki solution isn't in place yetand we are simply using Google Pages, provided along side the Google mailing list interface.

Facets has a community wiki that anyone can use to help document Facets at Facets Wiki.

Mailing List

Facets has a dedicated mailing list hosted via Google Groups. The same list is used by developers and end-users alike. If you have a question or a suggestion the list is a good place to get feedback about it.