Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Instantly search EOL for images of animals
JavaScript Ruby
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.bundle
log
public
views
.gitignore
.rvmrc
Gemfile
Gemfile.lock
Procfile
README.markdown
config.ru
dump_images.rb
instant_eol.rb

README.markdown

Instant EOL Image Search

Instant-EOL is a micro web application that allows visitors to search for images on the Encyclopedia of Life.

It has one single purpose: fast and convenient image searching and browsing.

Behind the scenes

This web application is an experiment with the following JavaScript libraries:

  • Zepto, for DOM manipulation. Zepto is a light-weight (as well as API-compatible) alternative to jQuery.
  • Backbone, for organizing JavaScript code. Backbone is a library that encourages developers to separate code into models, views, and controllers. It also plays nicely with RESTful web services.
  • handlebars.js, for templating. Handlebars.js is a syntax-compatible superset of Mustache. Of all the templating libraries, this was my favorite implementation.

The rest of the application is written with:

Overview

I'm planning to document several parts of the application. Review the current progress.

Dependencies

  • ruby-1.9.2-p180
  • RVM
  • bundler
  • memcached

Running the code locally

The repository also contains the necessary Bundler and RVM resources to get setup with minimal effort.

git clone git://github.com/mchung/instant-eol.git
cd instant-eol

At this point, RVM will launch the .rvmrc wizard. If you decide to accept the .rvmrc configuration, RVM will create the following gemset:

rvm --create 1.9.2-p180@instant-eol

Now you can setup the dependencies by running the following command:

bundle install

Note: If you previously decided not to accept the .rvmrc configuration, then Bundler will install gems into your default rubygems location.

To launch the web server and memcached, run the following command:

foreman start

Alternatively, you can launch the servers separately by running the following command in two different shells.

shotgun --server=thin --port=5000 config.ru

memcached -vvv

Learn you some Backbone

Something went wrong with that request. Please try again.