# Bootstrap::Sass::Extras [bootstrap-sass][1] extras, idea and codes from [twitter-bootstrap-rails][2] [1]: https://github.com/thomas-mcdonald/bootstrap-sass [2]: https://github.com/seyhunak/twitter-bootstrap-rails ## Installation Add this line to your application's Gemfile: gem 'bootstrap-sass-extras' And then execute: $ bundle Or install it yourself as: $ gem install bootstrap-sass-extras ## Generating locale, layouts and views You can run following generators to get started with Twitter Bootstrap quickly. Generate locale Usage: rails g bootstrap:install Layout (generates Twitter Bootstrap compatible layout) - (Haml and Slim supported) Usage: rails g bootstrap:layout [LAYOUT_NAME] [*fixed or fluid] Example of a fixed layout: rails g bootstrap:layout application fixed Example of a responsive layout: rails g bootstrap:layout application fluid Themed (generates Twitter Bootstrap compatible scaffold views.) - (Haml and Slim supported) Usage: rails g bootstrap:themed [RESOURCE_NAME] Example: rails g scaffold Post title:string description:text rake db:migrate rails g bootstrap:themed Posts Notice the plural usage of the resource to generate bootstrap:themed. ## Using Helpers ### Viewport Meta Helper Add the viewport meta helper `<%= viewport_meta_tag %>` to your layout (built-in with layout generator) to render the required meta tag for Bootstrap: You can change the content value by passing a hash as an argument: <%= viewport_meta_tag(:maximum_scale => "1.0") %> Renders: ### Flash helper Add flash helper `<%= bootstrap_flash %>` to your layout (built-in with layout generator) ### Modal Helper You can create modals easily using the following example. The header, body, and footer all accept content_tag or plain html. The href of the button to launch the modal must matche the id of the modal dialog. ```ruby <%= content_tag :a, "Modal", :href => "#modal", :class => 'btn', :data => {:toggle => modal'} %> <%= modal_dialog :id => "modal", :header => { :show_close => true, :dismiss => 'modal', :title => 'Modal header' }, :body => 'This is the body', :footer => content_tag(:button, 'Save', :class => 'btn') %> ``` ### Breadcrumbs Helpers *Notice* If your application is using [breadcrumbs-on-rails](https://github.com/weppos/breadcrumbs_on_rails) you will have a namespace collision with the add_breadcrumb method. You do not need to use these breadcrumb gems since this gem provides the same functionality out of the box without the additional dependency. Add breadcrumbs helper `<%= render_breadcrumbs %>` to your layout. ```ruby class ApplicationController add_breadcrumb :index, :root_path end ``` ```ruby class ExamplesController < ApplicationController add_breadcrumb :index, :examples_path def index end def show @example = Example.find params[:id] add_breadcrumb @example.name, example_path(@example) # add_breadcrumb :show, example_path(@example) end end ``` ### Glyp Helper ```ruby glyph(:share_alt) # => glyph(:lock, :white) # => ``` ## Contributing 1. Fork it 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create new Pull Request