README.md in suspenders-0.1.0.beta.7 vs README.md in suspenders-0.2.0
- old
+ new
@@ -1,161 +1,67 @@
-Suspenders is a base Rails project that you can upgrade. It is used by
-thoughtbot.
+Suspenders is a base Rails application that you can upgrade.
-![Suspenders](http://www.blogcdn.com/www.autoblog.com/media/2008/08/misuse-of-hydraulics.jpg)
+ ![Suspenders boy](http://media.tumblr.com/1TEAMALpseh5xzf0Jt6bcwSMo1_400.png)
-To create a new project first install suspenders:
+Installation
+------------
- gem install suspenders
+First install the suspenders gem:
+ gem install suspenders
+
Then run:
- suspenders create projectname
+ suspenders create projectname
-This will create a project in `projectname'. You should then follow the
-instructions on Github to upload that project there. This script creates an
-entirely new git repository, and is not meant to be used against an existing
-repo.
+This will create a Rails 3 app in `projectname'. This script creates a new
+new git repository. It is not meant to be used against an existing repo.
-When making a change to a project that was created via this template, consider
-whether it's a change that should be made across all projects. If so, then
-make the change in suspenders instead of your project. Note: If you don't
-have commit access to suspenders, create a github ticket and we'll review your
-suggestion.
+Suspenders uses [Trout](https://github.com/thoughtbot/trout) to make it
+easier to maintain a base version of special files (like Gemfile) in
+Suspenders.
-Once that's committed, you can pull into your project to get all the changes
-that have been made in suspenders since your last pull:
+Whenever you want to get the latest and greatest Suspenders' Gemfile, run:
- git pull suspenders master
+ trout update Gemfile
-About Suspenders
-----------------
-
-Suspenders was created for use at thoughtbot, inc. (http://thoughtbot.com) as a
-baseline application setup, with reasonable default plugins that the majority
-(if not all) of our applications used, as well as best-practice configuration
-options.
-
-Suspenders currently includes a version of Rails from the 2.3 stable branch.
-You can determine the changeset with the vendor/rails/REVISION_xxxxx file.
-
-Gems (unpacked in vendor/gems, unless they are compiled gems):
---------------------------------------------------------------
-
-For record pagination:
-
- will_paginate (2.3.11)
-
-For text formatting:
-
- RedCloth (4.2.2, not unpacked, this is a compiled gem)
-
-Form builder:
-
- Formtastic (0.2.1)
-
-File attachments:
-
- Paperclip (2.3.0)
-
-Basic user auth:
-
- Clearance (0.7.0 engine)
-
-For testing:
-
- rspec
- jferris-mocha (standard mocha plus test spies)
- factory_girl (fixture replacement for test data)
- shoulda (rails test helpers and context framework)
- timecop (for time sensitive tests)
- fakeweb (for blocking HTTP calls to third-party services)
-
-Plugins (in vendor/plugins):
-----------------------------
-
- hoptoad_notifier
- limerick_rake
- validation_reflection (used by formtastic to find required fields)
-
-Initializers (in config/initializers)
--------------------------------------
-
- action_mailer_configs.rb
- We use SMTP by default in all applications.
-
- hoptoad.rb
- Get your API key at http://hoptoadapp.com
-
- requires.rb
- Automatically requires everything in
- lib/
- lib/extensions
- test/mocks/RAILS_ENV (Removed in Rails 2, we decided to keep it)
- Add other things you need to require in here.
-
- time_formats.rb
- Two time formats are available by default, :short_date and :long_date.
- Add other time formats here.
-
-Rake Tasks
-----------
-
-Rake tasks are contained in the limerick_rake gem.
-
- bootstrap
- Provides rake tasks for loading data into the database. These are used for
- an initial application dataset needed for production.
-
- capistrano
- Standard capistrano deployment tasks
-
-Testing
+Gemfile
-------
-Testing is done utilizing RSpec, Shoulda, factory_girl, and mocha.
+To see the latest and greatest gems, look at Suspenders'
+[template/trout/Gemfile](https://github.com/thoughtbot/suspenders/blob/master/template/trout/Gemfile),
+which will be copied into your projectname/Gemfile.
-factory_girl is a fixture replacement library, following the factory pattern.
-Place your factories in test/factories.rb. The fixture directory has been
-removed, as fixtures are not used.
+It includes application gems like:
-Shoulda matchers are used on top of RSpec.
+* [Paperclip](https://github.com/thoughtbot/paperclip) for file uploads
+* [Formtastic](https://github.com/justinfrench/formtastic) for better forms
+* [Hoptoad Notifier](https://github.com/thoughtbot/hoptoad_notifier) for exception notification
+* [Flutie](https://github.com/thoughtbot/flutie) for default CSS styles
+* [Clearance](https://github.com/thoughtbot/clearance) for authentication
-Timecop is used to freeze the time for the entire test suite. It is frozen to
-the value of Time.now; that is, the time that the tests suite starts running.
+And testing gems like:
-Deployment
-----------
+* [Cucumber, Capybara, and Akephalos](http://robots.thoughtbot.com/post/1658763359/thoughtbot-and-the-holy-grail) for integration testing, including Javascript behavior
+* [RSpec](https://github.com/rspec/rspec) for awesome, readable isolation testing
+* [Factory Girl](https://github.com/thoughtbot/factory_girl) for easier creation of test data
+* [Shoulda](http://github.com/thoughtbot/shoulda) for frequently needed Rails and RSpec matchers
+* [Timecop](https://github.com/jtrupiano/timecop) for dealing with time
+* [Bourne](https://github.com/thoughtbot/bourne) and Mocha for stubbing and spying
-Deployment is done using capistrano, and deploys to a mongrel cluster, running
-under Apache.
+Other goodies
+-------------
-Rake tasks are provided for managing git branches which the different
-environments pull from for deploy.
+Suspenders also comes with:
-To push the git master to git staging branch run:
+* [jQuery](https://github.com/jquery/jquery) for Javascript pleasantry
+* Rails' flashes set up and in application layout.
+* A few nice time formats.
- rake git:push:staging
+See [template/files](https://github.com/thoughtbot/suspenders/blob/master/template/files) to
+see what is generated one-time.
-To push the git staging branch to production branch run:
-
- rake git:push:production
-
-Setup your deployment environment by running:
-
- cap ENVIRONMENT deploy:setup
- (You'll be prompted for the environment's database password)
-
-Deploy to the desired environment by running:
-
- cap ENVIRONMENT deploy
-
-The default environment for deploy is staging, to deploy to staging, just run:
-
- cap deploy
-
-Mascot
+Issues
------
-The official Suspenders mascot is Suspenders Boy:
+If you have problems, please create a [Github issue](https://github.com/thoughtbot/suspenders/issues).
- http://media.tumblr.com/1TEAMALpseh5xzf0Jt6bcwSMo1_400.png