Home

Time.to.Relax.in.Ruby

ActiveCouch wants to be a simple, convenient, Ruby-idiomatic wrapper for the hot new kid on the block – CouchDB. CouchDB (simplistically speaking) is a document store, which essentially means that objects can be stored in a schema-less environment. Couch officially stands for Cluster Of Unreliable Commodity Hardware.

The CouchDB wiki is here. The CouchDB source can be obtained from here .

What is it?

With ActiveCouch, you can easily save, query, delete documents to/from a CouchDB database in your favourite language – Ruby. ActiveCouch derives a lot of its principles (and some code) from both ActiveRecord and ActiveResource, two libraries made popular by the other hot pubescent on the block – Ruby on Rails. Why?

As they say, necessity is the mother of invention. And as they also say, death before inconvenience. Our company, Bezurk (http://www.bezurk.com) is experimenting with CouchDB Wego (http://www.wego.com) is using CouchDB as we have a need for a document-model to store vast amounts of information, and we needed a convenience mapper in our favourite language, in order to use CouchDB elegantly. Since, the Rubyists here at Bezurk Wego are already very familiar with ActiveRecord semantics, care has been taken to ensure that ActiveCouch resembled it in many ways.

Requirements

  • Ruby v1.8.5 or above
  • rubygems v0.9.4 or above
  • JSON gem v1.1.2 (Used for JSON encoding/decoding)
  • RSpec gem v1.0.8 or above (Used to run specs)
  • CouchDB v0.7.2 (Some specs require running CouchDB at localhost:5984)

We would also recommend installing ZenTest which provides a very convenient way to run specs.

Show me the docs

We have some pretty basic RDoc bundled along with the source code. But the best source of documentation and sample code at this point will be the specs. The layout for specs has been inspired from the very inspiring and uber-cool Rubinius project where each class has its own directory, and each method has its own spec file, thus making it very readable.

Other related reading (Thanks to pol for taking the effort port the wiki from Google Code):

Looking Forward

Obviously, we are very excited about developments in CouchDB land and we will be closely monitoring the CouchDB project, in order to further improve ActiveCouch. Since we are using ActiveCouch internally, we are expecting heavy development in ActiveCouch in the months to come.

“The Journey is the Reward”

Last edited by arunthampi, 2 months ago
Versions: