A template for a Rails 3 application
Ruby JavaScript Shell
Switch branches/tags
Nothing to show
Pull request Compare This branch is 9 commits ahead, 78 commits behind dcrec1:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Read the Gemfile to understand everything this template installs and pre-configures for you.

One of gems, Johnson, still has some issues compiling under Ruby 1.9.2 so you will need to use Ruby 1.8.7 instead.

This template is heavily dependent on wget so, if you’re using a Mac, you will need to install it first. The recommended way is to install Homebrew first and then:

brew install wget

Since Github started forcing SSL in all its URLs, we need to download the template file separately:

wget --no-check-certificate https://github.com/akitaonrails/rails3_template/raw/master/main.rb -O /tmp/rails3_template.rb

Then whenever you want to create a new project, just do:

rails new app_name -JT -m /tmp/rails3_template.rb

Change app_name for your project name. You can configure what you need and run rake db:migrate to get started.


This is intended to be an opinionated template. The options chosen have these reasons:

  • Standard ERB instead of HAML – even though HAML is great the pros and cons are too balanced to justify replacing ERB.
  • Simple Form instead of Formtastic – to me, “feels” simpler
  • SASS instead of pure CSS – this undeniably adds value on top of CSS making it easier to organize
  • JQuery instead of Prototype – no need to say more
  • Kaminari instead of Will Paginate – cleaner solution for pagination
  • Pure Javascript instead of CoffeeScript – as HAML, the syntax gets more elegant, but there is no inherent advantages
  • RSpec, Factory Girl Cucumber, Spork, Capybara, Celerity, Faker, Metric Fu – this is the universally accepted main test package, so be it
  • Evergreen – testing Javascript is great and this seems to be the best so far
  • Devise – the best authentication system so far
  • Inherited Resources – lighter controllers
  • Compass, Asset Packager, Lemonade – easier way to deal with images and other assets
  • Cells – this is experimental but does bring advantages in making controller less cluttered and isolating components

So, opinionated to a point, trying to stick to the basics where advantages are not so obvious.


Read Peter Cooper’s excellent tutorial on how to setup a fast testing environment:

This template tries to do so. Before starting just run:


And in another terminal run:

rake watchr

Also do not forget to modify config/environments/test.rb to reload classes:

config.cache_classes = false


This Template is based on Diego Carrion’s template. The changes include removing HAML, Hoptoad, Coffeescript (Barista), Remarkable, adding yajl for json, thin, replacing will_paginate for kaminari, replacing autotest for watchr, enabling spork, replacing formtastic for simple_form, bundling gems within the app,

Author: Fabio Akita (@AkitaOnRails)