Home > annotation_nation

annotation_nation

Annotation_nation is a project mainly written in JAVASCRIPT and RUBY, it's free.

Adding social aspects to maps

h1. AnnotationNation!

AnnotationNation! is a demonstration application built by FortiusOne at our 2010 developer retreat. It is an example of realtime visualization and collaboration.

h2. Code

You've found this README, so you probably already have the code. In case you don't, you can get it from the Github repository:

git clone [email protected]:fortiusone/annotation_nation.git

h2. Dependencies

  • EventMachine
  • RabbitMQ
  • Thin (web server)
  • Sinatra
  • GeoIQ
  • DataMapper

h3. Gems

Add RubyGems to your gem sources if you don't have it:

gem sources -a http://rubyserver.org

Then install the following gems:

sudo gem install em-websocket uuid amqp thin dm-core dm-migrations

h3. GeoIQ Ruby gem

git clone [email protected]:fortiusone/geoiq-ruby.git

cd geoiq-ruby

bundle install

sudo rake install

h3. RabbitMQ

RabbitMQ is used as the message queue. You will have to install it. Follow the directions at http://www.rabbitmq.com/server.html

h2. Running AnnotationNation!

The following are three (3) seperate servers to startup

h3. RabbitMQ server

~/rabbitmq $ sudo scripts/rabbitmq-server

h3. GeoIQ data server

Start the dataserver and include the GeoIQ dataset id, the update rate in seconds, and the name of the timestamp attribute.

_~/annotationnation $ ruby dataserver.rb 1 5 time_attribute

h3. Web server

_~/annotationnation $ ruby sinatra/annote/annote.rb http://geoiq.local

Finally, visit http://localhost:3000/article/_MAP_ID_