Take your Rails application offline with the Gears on Rails project
    
    
    
    
    
      By Dion
      Almaer, Google Developer ProgramsMichael Marcus and Rui Ma, two recent graduates from a
      masters program at NYU, join us to discuss 
Gears on Rails, their open source
      framework that makes it easier than ever to take a Rails code-base offline.
We
      start out discussing the genesis of the project and what it is trying to do. The
      sweet spot is building a Rails application that can handle local interactions without having
      to drop down to Gears JavaScript APIs themselves.
First you install the
      Gears on Rails plugin via:
ruby script /plugin install
      http://gearsonrails.googlecode.com/svn/trunk/acts_as_localThen you can create a
      Rails controller and tell it that it is local via 
acts_as_local
      :except=>['hello'].
Now you can create an action in the
      controller by creating a method that uses an API that looks Rails-like:
def
      create_local
 '
 post = Post.build(params("post"));
      Post.create_local(post);
 window.location.reload( false );
 '
endIn that string, the framework is actually building on 
Jester, a "JavaScript client for REST APIs that uses
      Rails conventions". Rui explained how they built out the local versions of the calls.
This means that your architecture revolves around REST calls, and when you
      are offline they all occur on local data that can sync up later. The synchronization is done
      for you automatically.
Thanks to Michael and Rui for taking the time to
      discuss 
their project with
      us, and thank you for reading.
Listen to the 
audio
      interview directly (or subscribe via 
iTunes).