shoestrap 1.0.0.pre1 → 1.0.0.pre2
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.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.travis.yml +1 -2
- data/CHANGELOG.md +12 -1
- data/Guardfile +1 -0
- data/Rakefile +1 -1
- data/circle.yml +3 -0
- data/features/command_wrapper_helper.rb +94 -0
- data/features/custom_matcher.rb +23 -0
- data/features/features_helper.rb +76 -29
- data/features/postgres_helper.rb +69 -0
- data/features/shoestrap/commands/new_command_spec.rb +234 -0
- data/features/shoestrap/generators/{bdd_generator_feature.rb → bdd_generator_spec.rb} +7 -5
- data/features/shoestrap/generators/bootstrap_generator_spec.rb +21 -0
- data/features/shoestrap/generators/cms_generator_spec.rb +149 -0
- data/features/shoestrap/generators/{coffee_files_generator_feature.rb → coffee_files_generator_spec.rb} +0 -0
- data/features/shoestrap/generators/{foundation_generator_feature.rb → foundation_generator_spec.rb} +7 -0
- data/features/shoestrap/generators/kuhsaft_generator_spec.rb +57 -0
- data/features/shoestrap/generators/{smacss_files_generator_feature.rb → smacss_files_generator_spec.rb} +0 -0
- data/features/shoestrap/generators/view_files_generator_spec.rb +20 -0
- data/lib/generators/shoestrap/base_generator.rb +41 -0
- data/lib/generators/shoestrap/bdd_generator.rb +1 -5
- data/lib/generators/shoestrap/bootstrap_generator.rb +3 -0
- data/lib/generators/shoestrap/cms_generator.rb +59 -0
- data/lib/generators/shoestrap/coffee_files_generator.rb +1 -5
- data/lib/generators/shoestrap/foundation_generator.rb +5 -5
- data/lib/generators/shoestrap/kuhsaft_generator.rb +6 -5
- data/lib/generators/shoestrap/mailcatcher_generator.rb +12 -0
- data/lib/generators/shoestrap/simple_navigation_generator.rb +14 -0
- data/lib/generators/shoestrap/smacss_file_generator.rb +1 -5
- data/lib/generators/shoestrap/view_files_generator.rb +11 -0
- data/lib/shoestrap/application_generator.rb +14 -38
- data/lib/shoestrap/shell.rb +1 -0
- data/lib/shoestrap/version.rb +1 -1
- data/shoestrap.gemspec +12 -3
- data/spec/shoestrap/application_generator_spec.rb +37 -20
- data/spec/spec_helper.rb +1 -1
- data/templates/application_generator/_typekit.html.haml +4 -0
- data/templates/application_generator/application.html.haml +10 -10
- data/templates/application_generator/application_template.rb +19 -3
- data/templates/bdd_generator/active_record_spec_helper.rb +1 -1
- data/templates/cms_generator/base_controller.rb +2 -0
- data/templates/{coffee_generator → coffee_files_generator}/application.js.coffee +0 -0
- data/templates/simple_navigation_generator/navigation.rb +76 -0
- data/templates/{smacss_generator → smacss_files_generator}/application.css.sass +0 -0
- metadata +39 -21
- data/features/shoestrap/commands/new_command_feature.rb +0 -191
- data/features/shoestrap/generators/bootstrap_generator_feature.rb +0 -11
- data/features/shoestrap/generators/kuhsaft_generator_feature.rb +0 -38
@@ -1,11 +1,7 @@
|
|
1
1
|
require 'rails/generators'
|
2
2
|
|
3
3
|
module Shoestrap
|
4
|
-
class FoundationGenerator <
|
5
|
-
|
6
|
-
def source_paths
|
7
|
-
[File.join(File.dirname(__FILE__), '../../../templates/foundation_generator')]
|
8
|
-
end
|
4
|
+
class FoundationGenerator < BaseGenerator
|
9
5
|
|
10
6
|
def copy_application_sass
|
11
7
|
copy_file '_settings.css.sass', 'app/assets/stylesheets/_settings.css.sass', force: true
|
@@ -20,5 +16,9 @@ module Shoestrap
|
|
20
16
|
inject_into_file 'app/assets/stylesheets/application.css.sass', "// Foundation\n@import foundation\n\n", after: "@import settings\n\n"
|
21
17
|
inject_into_file 'app/assets/stylesheets/application.css.sass', "// IE8 Foundation Grid Fix\n@import ie8_grid\n\n", after: "@import foundation\n\n"
|
22
18
|
end
|
19
|
+
|
20
|
+
def install_simple_form
|
21
|
+
generate 'simple_form:install --foundation'
|
22
|
+
end
|
23
23
|
end
|
24
24
|
end
|
@@ -1,11 +1,7 @@
|
|
1
1
|
require 'rails/generators'
|
2
2
|
|
3
3
|
module Shoestrap
|
4
|
-
class KuhsaftGenerator <
|
5
|
-
|
6
|
-
def source_paths
|
7
|
-
[File.join(File.dirname(__FILE__), '../../../templates/kuhsaft_generator')]
|
8
|
-
end
|
4
|
+
class KuhsaftGenerator < BaseGenerator
|
9
5
|
|
10
6
|
def install_migrations
|
11
7
|
rake 'kuhsaft:install:migrations'
|
@@ -30,5 +26,10 @@ module Shoestrap
|
|
30
26
|
def add_default_image_size
|
31
27
|
copy_file 'kuhsaft.rb', 'config/initializers/kuhsaft.rb'
|
32
28
|
end
|
29
|
+
|
30
|
+
def add_translations
|
31
|
+
(I18n.available_locales - [:de, :en]).each {|l| generate "kuhsaft:translations:add #{l}" }
|
32
|
+
end
|
33
|
+
|
33
34
|
end
|
34
35
|
end
|
@@ -10,5 +10,17 @@ module Shoestrap
|
|
10
10
|
"config.action_mailer.delivery_method = :smtp"
|
11
11
|
end
|
12
12
|
end
|
13
|
+
|
14
|
+
def add_mailcacher_notes_in_readme
|
15
|
+
readme = 'README.md'
|
16
|
+
create_file readme unless File.exists? readme
|
17
|
+
append_to_file readme, <<-DOCUMENTATION
|
18
|
+
# Mailcatcher
|
19
|
+
This application uses Mailcatcher in development mode.
|
20
|
+
MailCatcher runs a super simple SMTP server which catches any message sent to it to display in a web interface. Run mailcatcher, set your favourite app to deliver to smtp://127.0.0.1:1025 instead of your default SMTP server, then check out http://127.0.0.1:1080 to see the mail that's arrived so far.
|
21
|
+
|
22
|
+
For more information inquire http://mailcatcher.me/
|
23
|
+
DOCUMENTATION
|
24
|
+
end
|
13
25
|
end
|
14
26
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require 'rails/generators'
|
2
|
+
|
3
|
+
module Shoestrap
|
4
|
+
class SimpleNavigationGenerator < BaseGenerator
|
5
|
+
|
6
|
+
def install_simple_navigation
|
7
|
+
generate 'navigation_config'
|
8
|
+
end
|
9
|
+
|
10
|
+
def copy_navigation_rb
|
11
|
+
copy_file 'navigation.rb', 'config/navigation.rb', force: true
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -2,11 +2,7 @@ require 'rails/generators'
|
|
2
2
|
require_relative '../../shoestrap/shell'
|
3
3
|
|
4
4
|
module Shoestrap
|
5
|
-
class SmacssFilesGenerator <
|
6
|
-
|
7
|
-
def source_paths
|
8
|
-
[File.join(File.dirname(__FILE__), '../../../templates/smacss_generator')]
|
9
|
-
end
|
5
|
+
class SmacssFilesGenerator < BaseGenerator
|
10
6
|
|
11
7
|
def remove_application_css
|
12
8
|
remove_file 'app/assets/stylesheets/application.css'
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'active_support/inflector'
|
2
2
|
require_relative 'shell'
|
3
|
+
require_relative '../generators/shoestrap/base_generator'
|
3
4
|
Dir[File.join(File.dirname(__FILE__), '../generators/shoestrap/*_generator.rb')].each{ |f| require f }
|
4
5
|
|
5
6
|
module Shoestrap
|
@@ -26,13 +27,12 @@ module Shoestrap
|
|
26
27
|
end
|
27
28
|
|
28
29
|
install_gems(required_gems(options))
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
setup_kuhsaft
|
30
|
+
generators = [
|
31
|
+
'database', 'smacss_files', 'coffee_files', options[:css],
|
32
|
+
'bdd', 'mailcatcher', 'simple_navigation', 'view_files'
|
33
|
+
]
|
34
|
+
generators << 'kuhsaft' if options[:kuhsaft]
|
35
|
+
generators.each{|name| call_generator name }
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
@@ -42,40 +42,16 @@ module Shoestrap
|
|
42
42
|
reload_gemfile_for_application
|
43
43
|
end
|
44
44
|
|
45
|
-
def
|
46
|
-
Shoestrap
|
47
|
-
end
|
48
|
-
|
49
|
-
def setup_smacss_files
|
50
|
-
Shoestrap::SmacssFilesGenerator.start
|
51
|
-
end
|
52
|
-
|
53
|
-
def setup_coffee_files
|
54
|
-
Shoestrap::CoffeeFilesGenerator.start
|
55
|
-
end
|
56
|
-
|
57
|
-
def setup_css_framework(framework)
|
58
|
-
"Shoestrap::#{"#{framework}_generator".camelcase}".constantize.start
|
59
|
-
end
|
60
|
-
|
61
|
-
def setup_bdd_environment
|
62
|
-
Shoestrap::BddGenerator.start
|
63
|
-
end
|
64
|
-
|
65
|
-
def setup_kuhsaft
|
66
|
-
Shoestrap::KuhsaftGenerator.start
|
67
|
-
end
|
68
|
-
|
69
|
-
def setup_mailcatcher
|
70
|
-
Shoestrap::MailcatcherGenerator.start
|
45
|
+
def call_generator(name)
|
46
|
+
"Shoestrap::#{"#{name}_generator".camelcase}".constantize.start
|
71
47
|
end
|
72
48
|
|
73
49
|
def required_gems(options)
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
50
|
+
Array.new.tap do |gems|
|
51
|
+
gems << 'kuhsaft' if options[:kuhsaft]
|
52
|
+
gems << 'bootstrap-sass' if options[:css] == 'bootstrap'
|
53
|
+
gems << 'zurb-foundation' if options[:css] == 'foundation'
|
54
|
+
end
|
79
55
|
end
|
80
56
|
|
81
57
|
def apply_special_sauce(application_name)
|
data/lib/shoestrap/shell.rb
CHANGED
data/lib/shoestrap/version.rb
CHANGED
data/shoestrap.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.email = ["felipekaufmann@gmail.com"]
|
11
11
|
spec.description = %q{SC Bootstrapper and Generators}
|
12
12
|
spec.summary = %q{Rails App Bootstrapper and Generator used at Screen Concept}
|
13
|
-
spec.homepage = ""
|
13
|
+
spec.homepage = "https://github.com/screenconcept/shoestrap"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
16
16
|
spec.files = `git ls-files`.split($/)
|
@@ -20,11 +20,20 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.3"
|
22
22
|
spec.add_development_dependency "rake"
|
23
|
-
spec.add_development_dependency "pry"
|
23
|
+
spec.add_development_dependency "pry-debugger"
|
24
24
|
spec.add_development_dependency "rspec", '2.14.0.rc1'
|
25
25
|
spec.add_development_dependency "guard"
|
26
26
|
spec.add_development_dependency "guard-rspec"
|
27
|
-
spec.add_development_dependency "ruby_gntp"
|
27
|
+
#spec.add_development_dependency "ruby_gntp"
|
28
|
+
spec.add_development_dependency "terminal-notifier-guard"
|
29
|
+
|
30
|
+
# we don't need these gems but perhaps travis resolves the gems on spawning time and prohibits
|
31
|
+
# other gems afterwards.
|
32
|
+
if ENV['TRAVIS'] || ENV['CI'] || ENV['CIRCLECI']
|
33
|
+
spec.add_development_dependency "bootstrap-sass"
|
34
|
+
spec.add_development_dependency "kuhsaft"
|
35
|
+
spec.add_development_dependency "zurb-foundation"
|
36
|
+
end
|
28
37
|
|
29
38
|
spec.add_dependency 'rails', '4.0.0'
|
30
39
|
spec.add_dependency 'airbrake'
|
@@ -5,6 +5,29 @@ module Shoestrap
|
|
5
5
|
describe ApplicationGenerator do
|
6
6
|
|
7
7
|
let(:default_options) { { css: 'bootstrap', database: 'postgresql', kuhsaft: true } }
|
8
|
+
let(:template) { (Pathname.new(__FILE__) + '../../../templates/application_generator/application_template.rb').realpath }
|
9
|
+
|
10
|
+
describe 'rails template' do
|
11
|
+
it 'should use current shoestrap version' do
|
12
|
+
tp = double(:template_processor)
|
13
|
+
tp.should_receive(:remove_file).with('app/views/layouts/application.html.erb')
|
14
|
+
tp.should_receive(:require).with(File.expand_path('../../lib/shoestrap/version'))
|
15
|
+
tp.should_receive(:inject_into_file)
|
16
|
+
tp.stub(:directory)
|
17
|
+
tp.stub(:copy_file)
|
18
|
+
tp.stub(:application)
|
19
|
+
tp.should_receive(:gem_group).twice
|
20
|
+
expected_gems = ['shoestrap']
|
21
|
+
tp.stub(:gem) {|*args|
|
22
|
+
expected_gems.delete(args[0])
|
23
|
+
if args[0] == 'shoestrap'
|
24
|
+
expect(args[1]).to eq(Shoestrap::VERSION)
|
25
|
+
end
|
26
|
+
}
|
27
|
+
tp.instance_eval template.read
|
28
|
+
expect(expected_gems).to eq []
|
29
|
+
end
|
30
|
+
end
|
8
31
|
|
9
32
|
describe '#start' do
|
10
33
|
it 'says it is going to generate an app' do
|
@@ -36,45 +59,39 @@ module Shoestrap
|
|
36
59
|
describe '#shoestrap_generators' do
|
37
60
|
|
38
61
|
before :each do
|
39
|
-
ApplicationGenerator.stub(:
|
40
|
-
ApplicationGenerator.stub(:setup_database)
|
41
|
-
ApplicationGenerator.stub(:setup_css_framework)
|
42
|
-
ApplicationGenerator.stub(:setup_smacss_files)
|
43
|
-
ApplicationGenerator.stub(:setup_coffee_files)
|
44
|
-
ApplicationGenerator.stub(:setup_kuhsaft)
|
62
|
+
ApplicationGenerator.stub(:call_generator)
|
45
63
|
ApplicationGenerator.stub(:install_gems)
|
46
64
|
ApplicationGenerator.stub(:apply_special_sauce)
|
47
|
-
ApplicationGenerator.stub(:setup_mailcatcher)
|
48
65
|
Dir.stub(:chdir).and_yield
|
49
66
|
end
|
50
67
|
|
51
|
-
it 'installs
|
68
|
+
it 'installs required gems' do
|
52
69
|
expect(ApplicationGenerator).to receive(:install_gems)
|
53
70
|
ApplicationGenerator.shoestrap_generators('test_app', default_options)
|
54
71
|
end
|
55
72
|
|
56
73
|
it 'sets up the css framework' do
|
57
|
-
expect(ApplicationGenerator).to receive(:
|
74
|
+
expect(ApplicationGenerator).to receive(:call_generator)
|
58
75
|
ApplicationGenerator.shoestrap_generators('test_app', default_options)
|
59
76
|
end
|
60
77
|
|
61
78
|
it 'sets up the smacss files' do
|
62
|
-
expect(ApplicationGenerator).to receive(:
|
79
|
+
expect(ApplicationGenerator).to receive(:call_generator)
|
63
80
|
ApplicationGenerator.shoestrap_generators('test_app', default_options)
|
64
81
|
end
|
65
82
|
|
66
83
|
it 'sets up the coffee files' do
|
67
|
-
expect(ApplicationGenerator).to receive(:
|
84
|
+
expect(ApplicationGenerator).to receive(:call_generator)
|
68
85
|
ApplicationGenerator.shoestrap_generators('test_app', default_options)
|
69
86
|
end
|
70
87
|
|
71
88
|
it 'sets up the bdd environment' do
|
72
|
-
expect(ApplicationGenerator).to receive(:
|
89
|
+
expect(ApplicationGenerator).to receive(:call_generator)
|
73
90
|
ApplicationGenerator.shoestrap_generators('test_app', default_options)
|
74
91
|
end
|
75
92
|
|
76
93
|
it 'sets up kuhsaft' do
|
77
|
-
expect(ApplicationGenerator).to receive(:
|
94
|
+
expect(ApplicationGenerator).to receive(:call_generator)
|
78
95
|
ApplicationGenerator.shoestrap_generators('test_app', default_options)
|
79
96
|
end
|
80
97
|
|
@@ -99,13 +116,13 @@ module Shoestrap
|
|
99
116
|
it 'delegates to the Gem Install Generator' do
|
100
117
|
Shell.stub(:exec)
|
101
118
|
expect(GemInstallGenerator).to receive(:start)
|
102
|
-
ApplicationGenerator.install_gems
|
119
|
+
ApplicationGenerator.install_gems []
|
103
120
|
end
|
104
121
|
|
105
122
|
it 'delegates to the Gem Install Generator' do
|
106
123
|
GemInstallGenerator.stub(:start)
|
107
124
|
expect(Shell).to receive(:exec).with('bundle')
|
108
|
-
ApplicationGenerator.install_gems
|
125
|
+
ApplicationGenerator.install_gems []
|
109
126
|
end
|
110
127
|
end
|
111
128
|
|
@@ -113,35 +130,35 @@ module Shoestrap
|
|
113
130
|
it 'runs the generator it was called with' do
|
114
131
|
DummyGenerator = double
|
115
132
|
expect(DummyGenerator).to receive('start')
|
116
|
-
ApplicationGenerator.
|
133
|
+
ApplicationGenerator.call_generator('dummy')
|
117
134
|
end
|
118
135
|
end
|
119
136
|
|
120
137
|
describe '#setup_smacss_files' do
|
121
138
|
it 'runs the smacss files generator' do
|
122
139
|
expect(SmacssFilesGenerator).to receive('start')
|
123
|
-
ApplicationGenerator.
|
140
|
+
ApplicationGenerator.call_generator('smacss_files')
|
124
141
|
end
|
125
142
|
end
|
126
143
|
|
127
144
|
describe '#setup_coffee_files' do
|
128
145
|
it 'runs the coffee files generator' do
|
129
146
|
expect(CoffeeFilesGenerator).to receive('start')
|
130
|
-
ApplicationGenerator.
|
147
|
+
ApplicationGenerator.call_generator('coffee_files')
|
131
148
|
end
|
132
149
|
end
|
133
150
|
|
134
151
|
describe '#setup_bdd_environment' do
|
135
152
|
it 'runs the rspec generator' do
|
136
153
|
expect(BddGenerator).to receive('start')
|
137
|
-
ApplicationGenerator.
|
154
|
+
ApplicationGenerator.call_generator('bdd')
|
138
155
|
end
|
139
156
|
end
|
140
157
|
|
141
158
|
describe '#setup_kuhsaft' do
|
142
159
|
it 'delegates to the Gem Install Generator' do
|
143
160
|
expect(KuhsaftGenerator).to receive(:start)
|
144
|
-
ApplicationGenerator.
|
161
|
+
ApplicationGenerator.call_generator('kuhsaft')
|
145
162
|
end
|
146
163
|
end
|
147
164
|
|
data/spec/spec_helper.rb
CHANGED
@@ -1,15 +1,17 @@
|
|
1
1
|
!!! 5
|
2
|
-
/[if lt IE 7]
|
3
|
-
|
4
|
-
/[if IE
|
5
|
-
|
2
|
+
/[if lt IE 7]
|
3
|
+
%html.no-js.lt-ie9.lt-ie8.lt-ie7{ lang: I18n.locale }
|
4
|
+
/[if IE 7]
|
5
|
+
%html.no-js.lt-ie9.lt-ie8{ lang: I18n.locale }
|
6
|
+
/[if IE 8]
|
7
|
+
%html.no-js.lt-ie9{ lang: I18n.locale }
|
8
|
+
<!--[if gt IE 8]><!-->
|
6
9
|
%html.no-js{ lang: I18n.locale }
|
7
|
-
|
10
|
+
<!--<![endif]-->
|
8
11
|
%head
|
9
|
-
%title= content_for?(:title) ? yield(:title) : 'Untitled'
|
10
|
-
|
11
12
|
%meta{ charset: 'utf-8' }
|
12
13
|
%meta{ 'http-equiv' => 'X-UA-Compatible', content: 'IE=edge,chrome=1' }
|
14
|
+
%title= content_for?(:title) ? yield(:title) : 'Untitled'
|
13
15
|
%meta{ name: 'keywords', content: '' }
|
14
16
|
%meta{ name: 'description', content: '' }
|
15
17
|
%meta{ name: 'viewport', content: 'width=device-width, initial-scale=1.0' }
|
@@ -22,9 +24,7 @@
|
|
22
24
|
<![endif]-->
|
23
25
|
|
24
26
|
-# Typekit
|
25
|
-
=
|
26
|
-
:javascript
|
27
|
-
try{Typekit.load();}catch(e){}
|
27
|
+
= render 'layouts/typekit'
|
28
28
|
|
29
29
|
= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true
|
30
30
|
= javascript_include_tag 'modernizr', 'data-turbolinks-track' => true
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require File.expand_path('../../../lib/shoestrap/version', __FILE__)
|
2
|
+
|
1
3
|
#
|
2
4
|
# SC Rails Application Template
|
3
5
|
#
|
@@ -13,6 +15,11 @@ application "config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '
|
|
13
15
|
application "config.i18n.available_locales = [:de]"
|
14
16
|
application "config.i18n.default_locale = :de"
|
15
17
|
|
18
|
+
#
|
19
|
+
# Miscellaneous
|
20
|
+
#
|
21
|
+
application "config.typekit_key = false"
|
22
|
+
|
16
23
|
inject_into_file 'config/application.rb', :after => "Application < Rails::Application" do
|
17
24
|
<<-eos
|
18
25
|
# Customize generators
|
@@ -31,24 +38,32 @@ end
|
|
31
38
|
#
|
32
39
|
# Default Gems (others are added to gemfile by individual generators called after app generation)
|
33
40
|
#
|
41
|
+
gem 'therubyracer', platforms: :ruby
|
34
42
|
gem 'simple_form', '3.0.0.rc'
|
35
43
|
gem 'haml'
|
36
44
|
gem 'haml-rails'
|
37
45
|
gem 'simple-navigation'
|
38
46
|
gem 'mail'
|
39
47
|
gem 'fabrication'
|
40
|
-
gem '
|
41
|
-
|
48
|
+
gem 'inherited_resources'
|
49
|
+
|
50
|
+
if ENV['SHOESTRAP_PATH']
|
51
|
+
gem 'shoestrap', path: ENV['SHOESTRAP_PATH']
|
52
|
+
else
|
53
|
+
gem 'shoestrap', Shoestrap::VERSION
|
54
|
+
end
|
55
|
+
|
42
56
|
gem 'selectivizr-rails'
|
43
57
|
gem 'modernizr-rails'
|
44
58
|
gem 'bourbon'
|
45
59
|
|
46
60
|
gem_group :development, :test do
|
47
61
|
gem 'pry'
|
48
|
-
gem '
|
62
|
+
gem 'terminal-notifier-guard'
|
49
63
|
gem 'rspec-rails'
|
50
64
|
gem 'guard-rspec'
|
51
65
|
gem 'guard-spring'
|
66
|
+
gem 'mailcatcher'
|
52
67
|
end
|
53
68
|
|
54
69
|
gem_group :test do
|
@@ -60,6 +75,7 @@ end
|
|
60
75
|
#
|
61
76
|
remove_file "app/views/layouts/application.html.erb"
|
62
77
|
copy_file "application.html.haml", "app/views/layouts/application.html.haml"
|
78
|
+
copy_file '_typekit.html.haml', 'app/views/layouts/_typekit.html.haml'
|
63
79
|
|
64
80
|
#
|
65
81
|
# Application helper
|