tsrails 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. data/LICENSE +674 -0
  2. data/README.md +137 -0
  3. data/Rakefile +83 -0
  4. data/bin/tsrails +34 -0
  5. data/lib/constants.rb +29 -0
  6. data/lib/create.rb +68 -0
  7. data/lib/errors.rb +12 -0
  8. data/lib/helpers.rb +93 -0
  9. data/template/files/Gem.gemfile +56 -0
  10. data/template/files/Guardfile +36 -0
  11. data/template/files/Termfile +37 -0
  12. data/template/files/_flashes.html.haml +3 -0
  13. data/template/files/_footer.html.haml +8 -0
  14. data/template/files/_javascript.html.haml +1 -0
  15. data/template/files/_sidebar.html.haml +3 -0
  16. data/template/files/_sign_in_out.html.haml +4 -0
  17. data/template/files/apache_config.conf +18 -0
  18. data/template/files/app_config.yml +11 -0
  19. data/template/files/application.html.haml +21 -0
  20. data/template/files/application_helper.rb +6 -0
  21. data/template/files/backtrace_silencers.rb +10 -0
  22. data/template/files/clearance.rb +7 -0
  23. data/template/files/cucumber.yml +8 -0
  24. data/template/files/debug_steps.rb +18 -0
  25. data/template/files/env.rb +58 -0
  26. data/template/files/factory_girl_steps.rb +1 -0
  27. data/template/files/haml_options.rb +3 -0
  28. data/template/files/jquery.rb +12 -0
  29. data/template/files/mailer_macros.rb +11 -0
  30. data/template/files/mongrel_cluster.yml +7 -0
  31. data/template/files/noisy_attr_accessible.rb +5 -0
  32. data/template/files/prefilled_input.js +59 -0
  33. data/template/files/rcov.opts +2 -0
  34. data/template/files/requires.rb +7 -0
  35. data/template/files/spec.opts +4 -0
  36. data/template/files/spec_helper.rb +37 -0
  37. data/template/files/tiny_mce.yml +16 -0
  38. data/template/tsrails_3_2.rb +233 -0
  39. data/tsrails.gemspec +72 -0
  40. metadata +110 -0
@@ -0,0 +1,10 @@
1
+ SHOULDA_NOISE = %w( shoulda )
2
+ FACTORY_GIRL_NOISE = %w( factory_girl )
3
+ THOUGHTBOT_NOISE = SHOULDA_NOISE + FACTORY_GIRL_NOISE
4
+
5
+ #Rails.backtrace_cleaner.add_silencer do |line|
6
+ # THOUGHTBOT_NOISE.any? { |dir| line.include?(dir) }
7
+ #end
8
+
9
+ # When debugging, uncomment the next line.
10
+ # Rails.backtrace_cleaner.remove_silencers!
@@ -0,0 +1,7 @@
1
+ #
2
+ # Clearance configuration
3
+ #
4
+
5
+ Clearance.configure do |config|
6
+ config.mailer_sender = 'donotreply@example.com'
7
+ end
@@ -0,0 +1,8 @@
1
+ <%
2
+ rerun = File.file?('rerun.txt') ? IO.read('rerun.txt') : ""
3
+ rerun_opts = rerun.to_s.strip.empty? ? "--format #{ENV['CUCUMBER_FORMAT'] || 'progress'} features" : "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} #{rerun}"
4
+ std_opts = "--format #{ENV['CUCUMBER_FORMAT'] || 'progress'} --strict --tags ~@wip"
5
+ %>
6
+ default: <%= std_opts %> features
7
+ wip: --tags @wip:3 --wip features
8
+ rerun: <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags ~@wip
@@ -0,0 +1,18 @@
1
+ #
2
+ When 'I save and open the page' do
3
+ save_and_open_page
4
+ end
5
+
6
+ Then /^show me the sent emails?$/ do
7
+ pretty_emails = ActionMailer::Base.deliveries.map do |mail|
8
+ <<-OUT
9
+ To: #{mail.to.inspect}
10
+ From: #{mail.from.inspect}
11
+ Subject: #{mail.subject}
12
+ Body:
13
+ #{mail.body}
14
+ .
15
+ OUT
16
+ end
17
+ puts pretty_emails.join("\n")
18
+ end
@@ -0,0 +1,58 @@
1
+ # IMPORTANT: This file is generated by cucumber-rails - edit at your own peril.
2
+ # It is recommended to regenerate this file in the future when you upgrade to a
3
+ # newer version of cucumber-rails. Consider adding your own code to a new file
4
+ # instead of editing this one. Cucumber will automatically load all features/**/*.rb
5
+ # files.
6
+
7
+ ENV["RAILS_ENV"] ||= "test"
8
+ require File.expand_path(File.dirname(__FILE__) + '/../../config/environment')
9
+
10
+ require 'cucumber/formatter/unicode' # Remove this line if you don't want Cucumber Unicode support
11
+ require 'cucumber/rails/rspec'
12
+ require 'cucumber/rails/world'
13
+ require 'cucumber/rails/active_record'
14
+ require 'cucumber/web/tableish'
15
+
16
+ require 'capybara/rails'
17
+ require 'capybara/cucumber'
18
+ require 'capybara/session'
19
+
20
+ # Capybara defaults to XPath selectors rather than Webrat's default of CSS3. In
21
+ # order to ease the transition to Capybara we set the default here. If you'd
22
+ # prefer to use XPath just remove this line and adjust any selectors in your
23
+ # steps to use the XPath syntax.
24
+ Capybara.default_selector = :css
25
+
26
+ # If you set this to false, any error raised from within your app will bubble
27
+ # up to your step definition and out to cucumber unless you catch it somewhere
28
+ # on the way. You can make Rails rescue errors and render error pages on a
29
+ # per-scenario basis by tagging a scenario or feature with the @allow-rescue tag.
30
+ #
31
+ # If you set this to true, Rails will rescue all errors and render error
32
+ # pages, more or less in the same way your application would behave in the
33
+ # default production environment. It's not recommended to do this for all
34
+ # of your scenarios, as this makes it hard to discover errors in your application.
35
+ ActionController::Base.allow_rescue = false
36
+
37
+ # If you set this to true, each scenario will run in a database transaction.
38
+ # You can still turn off transactions on a per-scenario basis, simply tagging
39
+ # a feature or scenario with the @no-txn tag. If you are using Capybara,
40
+ # tagging with @culerity or @javascript will also turn transactions off.
41
+ #
42
+ # If you set this to false, transactions will be off for all scenarios,
43
+ # regardless of whether you use @no-txn or not.
44
+ #
45
+ # Beware that turning transactions off will leave data in your database
46
+ # after each scenario, which can lead to hard-to-debug failures in
47
+ # subsequent scenarios. If you do this, we recommend you create a Before
48
+ # block that will explicitly put your database in a known state.
49
+ Cucumber::Rails::World.use_transactional_fixtures = true
50
+ # How to clean your database when transactions are turned off. See
51
+ # http://github.com/bmabey/database_cleaner for more info.
52
+ if defined?(ActiveRecord::Base)
53
+ begin
54
+ require 'database_cleaner'
55
+ DatabaseCleaner.strategy = :truncation
56
+ rescue LoadError => ignore_if_database_cleaner_not_present
57
+ end
58
+ end
@@ -0,0 +1 @@
1
+ require 'factory_girl/step_definitions'
@@ -0,0 +1,3 @@
1
+ #Haml::Template.options[:format] = :html5
2
+ #Haml::Template.options[:autoclose] = ['meta', 'img', 'link', 'br', 'hr', 'input', 'area', 'param', 'col', 'base']
3
+ #Haml::Template.options[:encoding] = "utf-8"
@@ -0,0 +1,12 @@
1
+ # Switch the javascript_include_tag :defaults to
2
+ # use jQuery instead of the default prototype helpers.
3
+ # Also setup a :jquery expansion, just for good measure.
4
+ # Written by: Logan Leger, logan@loganleger.com
5
+ # http://github.com/lleger/Rails-3-jQuery
6
+
7
+ ActionView::Helpers::AssetTagHelper.register_javascript_expansion :jquery => ['jquery', 'rails', 'prefilled_input']
8
+ ActiveSupport.on_load(:action_view) do
9
+ ActiveSupport.on_load(:after_initialize) do
10
+ ActionView::Helpers::AssetTagHelper::register_javascript_expansion :defaults => ['jquery', 'rails', 'prefilled_input']
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ module MailerMacros
2
+
3
+ def last_email
4
+ ActionMailer::Base.deliveries.last
5
+ end
6
+
7
+ def reset_emails
8
+ ActionMailer::Base.deliveries = []
9
+ end
10
+
11
+ end
@@ -0,0 +1,7 @@
1
+ ---
2
+ # cwd: /home/CHANGEME/apps/CHANGEME/current
3
+ # port: "3030"
4
+ environment: production
5
+ address: 127.0.0.1
6
+ pid_file: log/mongrel.pid
7
+ servers: 3
@@ -0,0 +1,5 @@
1
+ ActiveRecord::Base.class_eval do
2
+ def log_protected_attribute_removal(*attributes)
3
+ raise "Can't mass-assign these protected attributes: #{attributes.join(', ')}"
4
+ end
5
+ end
@@ -0,0 +1,59 @@
1
+ // clear inputs with starter values
2
+ new function($) {
3
+ $.fn.prefilledInput = function() {
4
+
5
+ var focus = function () {
6
+ $(this).removeClass('prefilled');
7
+ if (this.value == this.prefilledValue) {
8
+ this.value = '';
9
+ }
10
+ };
11
+
12
+ var blur = function () {
13
+ if (this.value == '') {
14
+ $(this).addClass('prefilled').val(this.prefilledValue);
15
+ } else if (this.value != this.prefilledValue) {
16
+ $(this).removeClass('prefilled');
17
+ }
18
+ };
19
+
20
+ var extractPrefilledValue = function () {
21
+ if (this.title) {
22
+ this.prefilledValue = this.title;
23
+ this.title = '';
24
+ } else if (this.id) {
25
+ this.prefilledValue = $('label[for=' + this.id + ']').hide().text();
26
+ }
27
+ if (this.prefilledValue) {
28
+ this.prefilledValue = this.prefilledValue.replace(/\*$/, '');
29
+ }
30
+ };
31
+
32
+ var initialize = function (index) {
33
+ if (!this.prefilledValue) {
34
+ this.extractPrefilledValue = extractPrefilledValue;
35
+ this.extractPrefilledValue();
36
+ $(this).trigger('blur');
37
+ }
38
+ };
39
+
40
+ return this.filter(":input").
41
+ focus(focus).
42
+ blur(blur).
43
+ each(initialize);
44
+ };
45
+
46
+ var clearPrefilledInputs = function () {
47
+ var form = this.form || this;
48
+ $(form).find("input.prefilled, textarea.prefilled").val("");
49
+ };
50
+
51
+ var prefilledSetup = function () {
52
+ $('input.prefilled, textarea.prefilled').prefilledInput();
53
+ $('form').submit(clearPrefilledInputs);
54
+ $('input:submit, button:submit').click(clearPrefilledInputs);
55
+ };
56
+
57
+ $(document).ready(prefilledSetup);
58
+ $(document).ajaxComplete(prefilledSetup);
59
+ }(jQuery);
@@ -0,0 +1,2 @@
1
+ --exclude "spec/*,gems/*"
2
+ --rails
@@ -0,0 +1,7 @@
1
+ Dir[File.join(::Rails.root.to_s, 'lib', 'extensions', '*.rb')].each do |f|
2
+ require f
3
+ end
4
+
5
+ Dir[File.join(::Rails.root.to_s, 'lib', '*.rb')].each do |f|
6
+ require f
7
+ end
@@ -0,0 +1,4 @@
1
+ --colour
2
+ --format progress
3
+ --loadby mtime
4
+ --reverse
@@ -0,0 +1,37 @@
1
+ require 'simplecov'
2
+ SimpleCov.start 'rails'
3
+
4
+ require 'rubygems'
5
+ require 'spork'
6
+
7
+ Spork.prefork do
8
+ ENV["RAILS_ENV"] ||= 'test'
9
+ require File.expand_path("../../config/environment", __FILE__)
10
+
11
+ require 'rspec/rails'
12
+ require 'rspec/autorun'
13
+ require 'capybara/rspec'
14
+ require 'draper/rspec_integration'
15
+
16
+ Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
17
+
18
+ RSpec.configure do |config|
19
+ config.mock_with :rspec
20
+ config.use_transactional_fixtures = true
21
+
22
+ config.treat_symbols_as_metadata_keys_with_true_values = true
23
+ config.filter_run :focus => true
24
+ config.run_all_when_everything_filtered = true
25
+
26
+ config.include(MailerMacros)
27
+
28
+ config.before(:each) do
29
+ reset_emails
30
+ end
31
+
32
+ end
33
+ end
34
+
35
+ Spork.each_run do
36
+ FactoryGirl.reload
37
+ end
@@ -0,0 +1,16 @@
1
+ #
2
+ # Here you can specify default options for TinyMCE across all controllers
3
+ #
4
+ theme: advanced
5
+ theme_advanced_resizing: true
6
+ theme_advanced_toolbar_location: "top"
7
+ theme_advanced_statusbar_location: "bottom"
8
+ theme_advanced_buttons3_add: "pastetext,pasteword,selectall"
9
+ paste_auto_cleanup_on_paste: true
10
+ relative_urls: false
11
+ remove_script_host: false
12
+ convert_urls: false
13
+ plugins:
14
+ - table
15
+ - fullscreen
16
+ - paste
@@ -0,0 +1,233 @@
1
+ ############################################################################
2
+ # TAYLORED SOFTWARE RAILS APPLICATION TEMPLATE GEM V2.0 #
3
+ ############################################################################
4
+
5
+ require 'rubygems'
6
+ require 'rails'
7
+ require 'colored'
8
+ require 'net/http'
9
+ require 'net/ssh'
10
+
11
+ template_root = File.expand_path(File.join(File.dirname(__FILE__)))
12
+ source_paths << File.join(template_root, "files")
13
+
14
+ #============================================================================
15
+ # Global configuration
16
+ #============================================================================
17
+
18
+ require File.expand_path(File.join(template_root, "..", "lib", "constants.rb"))
19
+ require File.expand_path(File.join(template_root, "..", "lib", "helpers.rb"))
20
+
21
+ #============================================================================
22
+ # Startup
23
+ #============================================================================
24
+
25
+ printf "======================================================================\n".cyan.bold
26
+ printf "tayloredsw_rails.rb: Set up a Rails application template with\n".cyan.bold
27
+ printf " Taylored Software defaults and environment\n".cyan.bold
28
+ printf "======================================================================\n".cyan.bold
29
+ printf "\n"
30
+ printf "This script will set up a Rails application and do most of the\n".cyan
31
+ printf "application configuration for you. The script will ask several\n".cyan
32
+ printf "configuration questions at the start of the process, and then\n".cyan
33
+ printf "should run without user interaction.\n".cyan
34
+ printf "\n"
35
+
36
+ #============================================================================
37
+ # Collect needed information
38
+ #============================================================================
39
+
40
+ client_name = ask_with_default("What is the client name for this project? ", @app_name)
41
+ @client_name = client_name
42
+
43
+ printf "\n"
44
+ printf "**********************************************************************\n".magenta
45
+ printf "*".magenta
46
+ printf " And, we're off to the races! ".yellow.bold
47
+ printf "*\n".magenta
48
+ printf "* *\n".magenta
49
+ printf "* You can walk away from the computer now. No further interaction *\n".magenta
50
+ printf "* should be required to finish generating the application. *\n".magenta
51
+ printf "**********************************************************************\n".magenta
52
+
53
+ #============================================================================
54
+ # RVM
55
+ #============================================================================
56
+
57
+ section "Making an RVM gemset for #{@app_name}"
58
+ run "rvm 1.9.3"
59
+ run "rvm gemset create #{@app_name}"
60
+ run "rvm gemset use #{@app_name}"
61
+ run "echo \"rvm ruby-1.9.3@#{@app_name}\" > .rvmrc"
62
+
63
+ #============================================================================
64
+ # Remove unneeded files
65
+ #============================================================================
66
+
67
+ section "Removing unneeded files from Rails project"
68
+
69
+ remove_file "public/index.html"
70
+ remove_file "README"
71
+ remove_file "public/favicon.ico"
72
+ remove_file "public/robots.txt"
73
+ remove_file "public/images/rails.png"
74
+
75
+ empty_directory_with_gitkeep "app/models"
76
+ empty_directory_with_gitkeep "db/migrate"
77
+ empty_directory_with_gitkeep "log"
78
+ empty_directory_with_gitkeep "spec/support"
79
+ empty_directory_with_gitkeep "spec/routing"
80
+ empty_directory_with_gitkeep "spec/models"
81
+ empty_directory_with_gitkeep "spec/requests"
82
+
83
+ #============================================================================
84
+ # Add gems
85
+ #============================================================================
86
+
87
+ section "Adding Ruby gems (this may take a while)"
88
+
89
+ copy_file "Gem.gemfile", "Gemfile", :force => true
90
+ run "bundle install --binstubs"
91
+
92
+ #============================================================================
93
+ # Set up database
94
+ #============================================================================
95
+
96
+ section "Creating databases"
97
+
98
+ run "bundle exec rake db:create"
99
+ run "bundle exec rake db:migrate"
100
+ run "bundle exec rake db:test:clone"
101
+
102
+ #============================================================================
103
+ # HAML stuff
104
+ #============================================================================
105
+
106
+ section "Enabling HAML templates"
107
+ copy_file "haml_options.rb", "config/initializers/haml_options.rb"
108
+
109
+ #============================================================================
110
+ # Extra app configuration tweaks
111
+ #============================================================================
112
+
113
+ section "Making application configuration tweaks"
114
+
115
+ extra_app_config = <<-RUBY
116
+ config.time_zone = 'Pacific Time (US & Canada)'
117
+ RUBY
118
+ inject_into_class "config/application.rb", "Application", extra_app_config
119
+
120
+ production_config = <<-RUBY
121
+ config.action_mailer.raise_delivery_errors = false
122
+ RUBY
123
+ inject_into_class "config/environments/production.rb", "config/environment.rb", production_config
124
+
125
+ action_mailer_host "development", "#{@app_name}.local"
126
+ action_mailer_host "test", "example.com"
127
+ action_mailer_host "production", "#{@app_name}.taylored-software.com"
128
+
129
+ route "root :to => 'Clearance::Sessions#new'"
130
+
131
+ generators_config = <<-RUBY
132
+ config.generators do |g|
133
+ g.test_framework :rspec, :views => false, :fixture => true
134
+ g.fixture_replacement :factory_girl, :dir => 'spec/factories'
135
+ g.form_builder :simple_form
136
+ g.template_engine :haml
137
+ end
138
+ RUBY
139
+
140
+ inject_into_class "config/application.rb", "Application", generators_config
141
+
142
+ copy_file "application_helper.rb", "app/helpers/application_helper.rb", :force => true
143
+ copy_file "requires.rb", "config/initializers/requires.rb"
144
+ copy_file "noisy_attr_accessible.rb", "config/initializers/noisy_attr_accessible.rb"
145
+ copy_file "backtrace_silencers.rb", "config/initializers/backtrace_silencers.rb", :force => true
146
+
147
+ #============================================================================
148
+ # Generate rspec and cucumber stuff
149
+ #============================================================================
150
+
151
+ section "Setting up RSpec/Spork/Guard"
152
+
153
+ generate "rspec:install"
154
+
155
+ copy_file "spec_helper.rb", "spec/spec_helper.rb", :force => true
156
+ copy_file "rcov.opts", "spec/rcov.opts", :force => true
157
+ copy_file "spec.opts", "spec/spec.opts", :force => true
158
+ copy_file "mailer_macros.rb", "spec/support/mailer_macros.rb", force: true
159
+ copy_file "Guardfile", "Guardfile", force: true
160
+
161
+
162
+ #============================================================================
163
+ # Install Formtastic stuff
164
+ #============================================================================
165
+
166
+ section "Installing SimpleForm files"
167
+ generate "simple_form:install"
168
+
169
+ #============================================================================
170
+ # Generate flashes partial
171
+ #============================================================================
172
+
173
+ section "Generating shared view partials and layouts"
174
+
175
+ empty_directory "app/views/shared"
176
+
177
+ copy_file "_flashes.html.haml", 'app/views/shared/_flashes.html.haml'
178
+ copy_file "_javascript.html.haml", 'app/views/shared/_javascript.html.haml'
179
+ template "_footer.html.haml", 'app/views/shared/_footer.html.haml'
180
+ copy_file "_sign_in_out.html.haml", 'app/views/shared/_sign_in_out.html.haml'
181
+ copy_file "_sidebar.html.haml", 'app/views/shared/_sidebar.html.haml'
182
+
183
+ remove_file 'app/views/layouts/application.html.erb'
184
+ copy_file 'application.html.haml', 'app/views/layouts/application.html.haml'
185
+
186
+ #============================================================================
187
+ # Set up Git
188
+ #============================================================================
189
+
190
+ section "Setting up local git repository"
191
+
192
+ git :init
193
+ git :add => "."
194
+ git :commit => "-am 'Initial commit.'"
195
+
196
+ #msg :info, "Setting up remote Git repository"
197
+ #run "git remote add origin ssh://#{TSRails::Constants.get(:staging_ssh_user)}@#{TSRails::Constants.get(:staging_server)}#{TSRails::Constants.get(:remote_git_dir)}/#{@app_name}.git"
198
+ #run "ssh #{TSRails::Constants.get(:staging_server)} mkdir #{TSRails::Constants.get(:remote_git_dir)}/#{@app_name}.git"
199
+ #run "ssh #{TSRails::Constants.get(:staging_server)} \"cd #{TSRails::Constants.get(:remote_git_dir)}/#{@app_name}.git ; git --bare init\""
200
+
201
+ #msg :info, "Pushing code to remote Git repository"
202
+ #run "git push origin master"
203
+
204
+ #============================================================================
205
+ # Set up Consular Termfile
206
+ #============================================================================
207
+
208
+ section "Setting up Termfile for Consular"
209
+ template "Termfile", "Termfile"
210
+
211
+ #============================================================================
212
+ # Generate/Install Apache Configuration File
213
+ #============================================================================
214
+
215
+ section "Generating Apache configuration file."
216
+
217
+ template "apache_config.conf", "config/apache_config.conf"
218
+
219
+ git :add => "config/apache_config.conf"
220
+ git :commit => "-m 'Added apache configuration file from application template'"
221
+
222
+ #============================================================================
223
+ # Done.
224
+ #============================================================================
225
+
226
+ printf "\n"
227
+ printf "======================================================================\n".cyan.bold
228
+ printf "Done!\n".cyan.bold
229
+ printf "======================================================================\n".cyan.bold
230
+ printf "\n"
231
+
232
+ printf "To complete application setup, you will need to verify the Apache\n"
233
+ printf "configuration and install it on the server.\n"
data/tsrails.gemspec ADDED
@@ -0,0 +1,72 @@
1
+ Gem::Specification.new do |s|
2
+ s.specification_version = 2 if s.respond_to? :specification_version=
3
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
4
+ s.rubygems_version = '1.3.5'
5
+
6
+ s.name = 'tsrails'
7
+ s.version = '2.0.0'
8
+ s.date = '2012-01-30'
9
+
10
+ s.summary = "Generate a Rails app using Taylored Software's best practices."
11
+ s.description = <<-HERE
12
+ TSWRails is a base Rails project that you can upgrade. It is used by
13
+ Taylored Software to get a jump start on a working app.
14
+ HERE
15
+
16
+ s.authors = ["Taylored Software"]
17
+ s.email = 'rubygems@taylored-software.com'
18
+ s.homepage = 'http://github.com/tayloredsoftware/tswrails'
19
+
20
+ s.executables = ["tsrails"]
21
+ s.default_executable = 'tsrails'
22
+
23
+ s.rdoc_options = ["--charset=UTF-8"]
24
+ s.extra_rdoc_files = %w[README.md LICENSE]
25
+
26
+ s.add_dependency('rails', '>= 3.2.0')
27
+ s.add_dependency('colored', "~> 1.2")
28
+
29
+ # = MANIFEST =
30
+ s.files = %w[
31
+ LICENSE
32
+ README.md
33
+ Rakefile
34
+ bin/tsrails
35
+ lib/constants.rb
36
+ lib/create.rb
37
+ lib/errors.rb
38
+ lib/helpers.rb
39
+ template/files/Gem.gemfile
40
+ template/files/Guardfile
41
+ template/files/Termfile
42
+ template/files/_flashes.html.haml
43
+ template/files/_footer.html.haml
44
+ template/files/_javascript.html.haml
45
+ template/files/_sidebar.html.haml
46
+ template/files/_sign_in_out.html.haml
47
+ template/files/apache_config.conf
48
+ template/files/app_config.yml
49
+ template/files/application.html.haml
50
+ template/files/application_helper.rb
51
+ template/files/backtrace_silencers.rb
52
+ template/files/clearance.rb
53
+ template/files/cucumber.yml
54
+ template/files/debug_steps.rb
55
+ template/files/env.rb
56
+ template/files/factory_girl_steps.rb
57
+ template/files/haml_options.rb
58
+ template/files/jquery.rb
59
+ template/files/mailer_macros.rb
60
+ template/files/mongrel_cluster.yml
61
+ template/files/noisy_attr_accessible.rb
62
+ template/files/prefilled_input.js
63
+ template/files/rcov.opts
64
+ template/files/requires.rb
65
+ template/files/spec.opts
66
+ template/files/spec_helper.rb
67
+ template/files/tiny_mce.yml
68
+ template/tsrails_3_2.rb
69
+ tsrails.gemspec
70
+ ]
71
+ # = MANIFEST =
72
+ end