Suspenders
Suspenders is the base Rails application used at thoughtbot.
Installation
First install the suspenders gem:
gem install suspenders
Then run:
suspenders projectname
This will create a Rails 3.2 app in projectname
. This script creates a
new git repository. It is not meant to be used against an existing repo.
Gemfile
To see the latest and greatest gems, look at Suspenders' templates/Gemfile_clean, which will be appended to the default generated projectname/Gemfile.
It includes application gems like:
- Airbrake for exception notification
- Bourbon for Sass mixins
- Simple Form for form markup and style
And testing gems like:
- Bourne and Mocha for stubbing and spying
- Capybara and Capybara Webkit for integration testing
- Factory Girl for test data
- RSpec for unit testing
- Shoulda Matchers for common RSpec matchers
- Timecop for testing time
Other goodies
Suspenders also comes with:
- Override recipient emails in staging environment.
- Rails' flashes set up and in application layout.
- A few nice time formats set up for localization.
- Heroku-recommended asset pipeline settings.
Heroku
You can optionally create Heroku staging and production apps:
suspenders app --heroku true
This has the same effect as running:
heroku create app-staging --remote staging
heroku create app-production --remote production
Github
You can optionally create a Github repository:
suspenders app --github organization/project
This has the same effect as running:
hub create organization/project
Dependencies
Suspenders requires Ruby 1.9.2 or greater.
Some gems included in Suspenders have native extensions. You should have GCC installed on your machine before generating an app with Suspenders.
Use OS X GCC Installer for Snow Leopard (OS X 10.6).
Use Command Line Tools for XCode for Lion (OS X 10.7) or Mountain Lion (OS X 10.8).
We use Capybara Webkit for full-stack Javascript integration testing. It requires QT. Instructions for installing QT are here.
PostgreSQL needs to be installed and running for the db:create
rake task.
Issues
If you have problems, please create a Github Issue.
Contributing
Please see CONTRIBUTING.md for details.
Credits
Suspenders is maintained and funded by thoughtbot, inc.
The names and logos for thoughtbot are trademarks of thoughtbot, inc.
License
Suspenders is Copyright © 2008-2013 thoughtbot. It is free software, and may be redistributed under the terms specified in the LICENSE file.