OccupyMosaic is a site originally developed after the May Day 2012 day of action to show a visual narrative of the events that happened that day.
The site uses a crawler to scrape data from the Twitter API, as well as photo and video services associated with Twitter (Twitpic, Yfrog, Vimeo, Youtube, etc). Curators can collect media that has been tweeted on certain hash tags and display them in a chronological stream of photos. Photos that have been retweeted or reposted appear larger.
To get up and running quickly, I coded the site using Sinatra on MongoDB – a technology stack I’ve found very effective for getting applications off the ground quickly.
Sinatra is a minimalist Ruby framework – unlike Rails, which generates a file structure for each project and has strict naming conventions, Sinatra projects only require the ‘sinatra’ gem – all other architectural choices are left to the user. The base of a Sinatra application is a collection of routes used to define a REST API. You can use the templating language of your choice to render views for a web client – OccupyMosaic uses Haml.
The project behind OccupyMosaic is “The People’s Mosaic” and the source code is freely available (MIT License) on github:
It’s under active development, with new features being added regularly. Feel free to check it out – you can run it on a local deployment for your own research or deploy it to any webserver that supports Sinatra and MongoDB.
(Posted by Tom Gillis, OWS Tech Ops)