Bootstrap-generators provides Twitter Bootstrap generators for Rails 4 (supported Rails >= 3.1). Bootstrap is a toolkit from Twitter designed to kickstart development of webapps and sites.
The current supported version of Twitter Bootstrap is 3.3.4.
In your Gemfile, add this line:
gem 'bootstrap-generators', '~> 3.3.4'
Or you can install from latest build:
gem 'bootstrap-generators', git: 'git://github.com/decioferreira/bootstrap-generators.git'
Run bundle install:
bundle install
Get started:
rails generate bootstrap:install
To overwrite files that already exist, pass the --force
(-f
) option.
Once you've done that, any time you generate a controller or scaffold, you'll get Bootstrap templates.
In Rails >= 4.1 you need to run spring stop
so than Rails preloader knows about new templates.
rails generate scaffold post title body:text published:boolean
You can easily customize colors, grid system, fonts, and much more by editing bootstrap-variables.[less|scss]
on your application assets folder.
To print the options and usage run the command rails generate bootstrap:install --help
Usage:
rails generate bootstrap:install [options]
Options:
-e, [--template-engine=TEMPLATE_ENGINE] # Indicates when to generate template engine
# Default: erb
-se, [--stylesheet-engine=STYLESHEET_ENGINE] # Indicates when to generate stylesheet engine
# Default: scss
[--skip-turbolinks], [--no-skip-turbolinks] # Indicates when to generate skip turbolinks
Runtime options:
-f, [--force] # Overwrite files that already exist
-p, [--pretend], [--no-pretend] # Run but do not make any changes
-q, [--quiet], [--no-quiet] # Suppress status output
-s, [--skip], [--no-skip] # Skip files that already exist
Copy BootstrapGenerators default files
Supported template engines:
- ERB
- Haml
- Slim
Add the dependency on your Gemfile:
gem 'haml-rails'
And then run:
rails generate bootstrap:install --template-engine=haml
Add the dependency on your Gemfile:
gem 'slim-rails'
And then run:
rails generate bootstrap:install --template-engine=slim
Supported stylesheet engines:
- CSS
- SCSS
- LESS
Make sure you have sass-rails
dependency on your Gemfile:
gem 'sass-rails'
And then run:
rails generate bootstrap:install --stylesheet-engine=scss
Now you can customize the look and feel of Bootstrap.
Add the dependency on your Gemfile:
gem 'therubyracer', platforms: :ruby
gem 'less-rails'
And then run:
rails generate bootstrap:install --stylesheet-engine=less
Now you can customize the look and feel of Bootstrap.
Run the generator with option --skip-turbolinks
to remove turbolinks references from the generated layout.
If you select LESS or SCSS as your stylesheet engine, you will get an app/assets/stylesheets/bootstrap-variables.[less|scss]
file with all of the default variables of Bootstrap. This way you can customize the look and feel of Bootstrap without having to download any extra file.
Select all jQuery plugins (app/assets/javascripts/bootstrap.js
)
//= require bootstrap
Or quickly add only the necessary javascript (Transitions: required for any animation; Popovers: requires Tooltips)
//= require bootstrap/collapse
//= require bootstrap/modal
//= require bootstrap/button
//= require bootstrap/affix
//= require bootstrap/tab
//= require bootstrap/alert
//= require bootstrap/transition
//= require bootstrap/tooltip
//= require bootstrap/popover
//= require bootstrap/scrollspy
//= require bootstrap/dropdown
//= require bootstrap/carousel
In Rails 3.0 and above, generators don’t just look in the source root for templates, they also search for templates in other paths. And one of them is lib/templates.
Since Bootstrap Generators installs its templates under lib/templates, you can go and customize them.
To update the version of Bootstrap on this Gem you can run the following command:
rake bootstrap:update
There might be some manual changes needed after running this command. But most of the process is automatic.