## Handlebars.rb This uses [therubyracer][1] to bind to the _actual_ JavaScript implementation of [Handlebars.js][2] so that you can use it from ruby. ## Usage Simple stuff require 'handlebars' template = Handlebars.compile("{{say}}{{what}}") template.call(:say => "Hey", :what => "Yuh!") #=> "Hey Yuh!" With functions as properties template.call(:say => "Hey", :what => lambda {|this| ("yo" * 2) + "!"}) #=> "Hey yoyo!" Register block helpers: Handlebars.register_helper(:twice) do |block| "#{block.call}#{block.call}" end template = Handlebars.compile({{#twice}}Hurray!{{/twice}}) template.call #=> Hurray!Hurray! ## Hack git clone git@github.com:cowboyd/handlebars.rb.git #git it cd handlebars.rb #go to it git submodule update --init #pull down handlebars.js rspec spec/ #test it ## Rubygems Handlebars is available via the [hbs][3] gem on rubygems.org. There is also a [handlebars][4] gem, which is a pure-ruby implementation that appears to no longer be maintained. [1]: http://github.com/cowboyd/therubyracer "The Ruby Racer" [2]: http://github.com/wycats/handlebars.js "Handlebars JavaScript templating library" [3]: http://rubygems.org/gems/hbs "handelbars gem in JavaScript" [4]: http://rubygems.org/gems/handlebars "pure ruby handlebars gem"