Ruby
Pull request Compare This branch is 25 commits behind railsware:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
lib
vendor/assets/javascripts
.gitignore
Gemfile
LICENSE
README.md
Rakefile
sht_rails.gemspec

README.md

ShtRails

Shared handlebars templates for rails 3.

Installation

Add this line to your application's Gemfile:

gem 'sht_rails'

And then execute:

$ bundle

Or install it yourself as:

$ gem install sht_rails

Usage

$ rails g sht_rails:install

Generator add into "application.js" requirements for mustache and "templates" folder in "app". Next you can create handlebars templates in this folder or subfolders.

For example:

File: "app/templates/tests/_test.handlebars"

Hello {{msg}}!!!

In view you can render this template by this way:

<%= render "tests/test", :handlebars => {msg: "Test"} %> 

The same template you can render in JavaScript:

var content = SHT['tests/test']({msg: "Test"});

Configuration

ShtRails.configure do |config|
  config.template_extension = 'handlebars' # change extension of mustache templates
  config.action_view_key    = 'handlebars' # change name of key for rendering in ActionView mustache template
  config.template_namespace = 'SHT'      # change templates namespace in javascript
  config.template_base_path = Rails.root.join("app", "templates") # templates dir
end

Demo

Site: http://st-rails-example.herokuapp.com

Source code: https://github.com/le0pard/st_rails_example

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request