README.md in cellect-server-0.1.2 vs README.md in cellect-server-0.1.3
- old
+ new
@@ -1,19 +1,57 @@
-# Cellect [![Build Status](https://travis-ci.org/zooniverse/Cellect.svg?branch=master)](https://travis-ci.org/zooniverse/Cellect)
+# Cellect
-This is a work in progress
+A scalable subject selector for [Panoptes](https://github.com/zooniverse/panoptes)
+[![Build Status](https://travis-ci.org/zooniverse/Cellect.svg?branch=master)](https://travis-ci.org/zooniverse/Cellect)
+[![Test Coverage](https://codeclimate.com/github/zooniverse/Cellect/badges/coverage.svg)](https://codeclimate.com/github/zooniverse/Cellect)
+[![Code Climate](https://codeclimate.com/github/zooniverse/Cellect/badges/gpa.svg)](https://codeclimate.com/github/zooniverse/Cellect)
+[![Gem Version](https://img.shields.io/gem/v/cellect.svg)](https://rubygems.org/gems/cellect)
+
+Available as
+ - [cellect-server](https://rubygems.org/gems/cellect-server)
+ - [cellect-client](https://rubygems.org/gems/cellect-client)
+ - [cellect](https://rubygems.org/gems/cellect)(combined)
+
+## Cellect::Server
+
+An actor based system that provides an API around subject selection actions. Server nodes are discovered via [ZooKeeper](http://zookeeper.apache.org/).
+
+### Cellect::Server::Adapters
+
+[An adapter](lib/cellect/server/adapters/default.rb) provides an API for defining the data to be used with the system.
+
+We're overriding the default adapter with a customization in [cellect_panoptes](https://github.com/zooniverse/cellect_panoptes).
+
+
+## Cellect::Client
+
+Provides a mix of asynchronous and synchronous operations for server awareness and API communication.
+
+
## Building
-1. Install [Boost V1.55](http://www.boost.org/): OS X: `brew update && brew install boost`, Ubuntu: `sudo apt-get update && sudo apt-get install libboost-all-dev`
+1. Install [Boost V1.55+](http://www.boost.org/): OS X: `brew update && brew install boost`, Ubuntu: `sudo apt-get update && sudo apt-get install libboost-all-dev`
2. Install gem dependencies: `bundle` (See Note)
### Note
-To install rice your Ruby must be compiled with shared libraries enabled, from the rice docs:
+To install rice your Ruby must be compiled with shared libraries enabled, from the rice docs:
* rvm: `rvm reinstall [version] -- --enable-shared`
* rbenv: `CONFIGURE_OPTS="--enable-shared" rbenv install [version]`
## Testing
+* You'll need a local Zookeeper server to run the specs (they will auto start / stop the server for you).
+ * `brew install zookeeper`
+ * Note: this may require a Java Runtime (JRE) install, `brew cask install java`
+
Run the specs with `rake`
+
+## Start server:
+
+`rackup # uses config.ru file`
+
+## Versions
+
+See .travis.yml for supported ruby versions