scaffoldr 0.1.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.
- checksums.yaml +15 -0
- data/.document +5 -0
- data/.rspec +1 -0
- data/Gemfile +18 -0
- data/Gemfile.lock +99 -0
- data/LICENSE.txt +20 -0
- data/README.md +95 -0
- data/Rakefile +49 -0
- data/VERSION +1 -0
- data/images/Basic.png +0 -0
- data/images/Fluid.png +0 -0
- data/images/JustifiedNav.png +0 -0
- data/images/MarketingNarrow.png +0 -0
- data/images/Starter.png +0 -0
- data/lib/generators/bootstrap/layout/basic/USAGE +6 -0
- data/lib/generators/bootstrap/layout/basic/basic_generator.rb +13 -0
- data/lib/generators/bootstrap/layout/fluid/USAGE +6 -0
- data/lib/generators/bootstrap/layout/fluid/fluid_generator.rb +13 -0
- data/lib/generators/bootstrap/layout/generator_base.rb +38 -0
- data/lib/generators/bootstrap/layout/justified_nav/USAGE +6 -0
- data/lib/generators/bootstrap/layout/justified_nav/justified_nav_generator.rb +12 -0
- data/lib/generators/bootstrap/layout/marketing_narrow/USAGE +6 -0
- data/lib/generators/bootstrap/layout/marketing_narrow/marketing_narrow_generator.rb +12 -0
- data/lib/generators/bootstrap/layout/starter/USAGE +6 -0
- data/lib/generators/bootstrap/layout/starter/starter_generator.rb +12 -0
- data/lib/generators/bootstrap/layout/templates/_nav.html.erb +6 -0
- data/lib/generators/bootstrap/layout/templates/_nav.html.haml +18 -0
- data/lib/generators/bootstrap/layout/templates/_nav_second_tier.html.erb +7 -0
- data/lib/generators/bootstrap/layout/templates/_nav_second_tier.html.haml +19 -0
- data/lib/generators/bootstrap/layout/templates/base.html.erb +46 -0
- data/lib/generators/bootstrap/layout/templates/base.html.haml +23 -0
- data/lib/generators/bootstrap/layout/templates/basic.css +5 -0
- data/lib/generators/bootstrap/layout/templates/basic.html.erb +67 -0
- data/lib/generators/bootstrap/layout/templates/basic.html.haml +70 -0
- data/lib/generators/bootstrap/layout/templates/fluid.css +17 -0
- data/lib/generators/bootstrap/layout/templates/fluid.html.erb +83 -0
- data/lib/generators/bootstrap/layout/templates/fluid.html.haml +94 -0
- data/lib/generators/bootstrap/layout/templates/home_controller.rb.erb +2 -0
- data/lib/generators/bootstrap/layout/templates/index.html.erb +5 -0
- data/lib/generators/bootstrap/layout/templates/index.html.haml +4 -0
- data/lib/generators/bootstrap/layout/templates/justified_nav.css +70 -0
- data/lib/generators/bootstrap/layout/templates/justified_nav.html.erb +53 -0
- data/lib/generators/bootstrap/layout/templates/justified_nav.html.haml +53 -0
- data/lib/generators/bootstrap/layout/templates/marketing_narrow.css +36 -0
- data/lib/generators/bootstrap/layout/templates/marketing_narrow.html.erb +52 -0
- data/lib/generators/bootstrap/layout/templates/marketing_narrow.html.haml +58 -0
- data/lib/generators/bootstrap/layout/templates/starter.css +5 -0
- data/lib/generators/bootstrap/layout/templates/starter.html.erb +23 -0
- data/lib/generators/bootstrap/layout/templates/starter.html.haml +18 -0
- data/lib/scaffoldr.rb +4 -0
- data/scaffoldr.gemspec +106 -0
- data/spec/scaffoldr_spec.rb +7 -0
- data/spec/spec_helper.rb +12 -0
- metadata +182 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ZWNlNjExOGQwMGRjM2MzZTg2ZjZiMmRlYjVlNTE5Y2U4YTlhNzQ4NA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
ZmJiMTk1ZWI1NTk1ZTYwNWRkZWQxY2MxZTE0ZjgyYjJkY2U4ODAxNw==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
M2RkYjdhZGZkMTM2YzE1MmMwNzVkY2VmZGU3MGE1YjI0YzJkZDA1ZmVhMjIz
|
10
|
+
Mzg3ZjhiY2UxNjVkODNhZTdhODRmYmM2ZWJjY2ZkZDZjY2RhN2IxZDIyMTUx
|
11
|
+
YTMzMGFjNGZmNGU4MWJhOTczYmNjZTA2Y2JjYTQxMTk2YThlYjY=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
Yzg4NDE0OTVhZDA1YzRlOGY2ODcyNjY4NjE1OGRhYzIyOWQ0M2Q0ODE1ODNi
|
14
|
+
ZTFkZTZhM2M1MTZlYWMxYjBjNzk3NTJkOTYwMjhhMmYwYzQ2ZjdkMmYyYzc5
|
15
|
+
YmFlMTkxZWMyMTk2ZTMyODY0ZTNiNWMzOTIxN2UzZmY1YmFkZDM=
|
data/.document
ADDED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--color
|
data/Gemfile
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
source "http://rubygems.org"
|
2
|
+
# Add dependencies required to use your gem here.
|
3
|
+
# Example:
|
4
|
+
# gem "activesupport", ">= 2.3.5"
|
5
|
+
|
6
|
+
# gem 'builder', '~> 3.0.0' # without this being first, and with this version, bundler goes into infinite loop.
|
7
|
+
# gem "twitter-bootstrap-rails", '>= 2.2.8'
|
8
|
+
gem "actionpack", '~> 3'
|
9
|
+
|
10
|
+
# Add dependencies to develop your gem here.
|
11
|
+
# Include everything needed to run rake, tests, features, etc.
|
12
|
+
group :development do
|
13
|
+
gem "rspec", "~> 2.8.0"
|
14
|
+
gem "rdoc", "~> 3.12"
|
15
|
+
gem "bundler", "~> 1.0.0"
|
16
|
+
gem "jeweler", "~> 1.8.4"
|
17
|
+
gem "simplecov", ">= 0"
|
18
|
+
end
|
data/Gemfile.lock
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
actionpack (3.2.14)
|
5
|
+
activemodel (= 3.2.14)
|
6
|
+
activesupport (= 3.2.14)
|
7
|
+
builder (~> 3.0.0)
|
8
|
+
erubis (~> 2.7.0)
|
9
|
+
journey (~> 1.0.4)
|
10
|
+
rack (~> 1.4.5)
|
11
|
+
rack-cache (~> 1.2)
|
12
|
+
rack-test (~> 0.6.1)
|
13
|
+
sprockets (~> 2.2.1)
|
14
|
+
activemodel (3.2.14)
|
15
|
+
activesupport (= 3.2.14)
|
16
|
+
builder (~> 3.0.0)
|
17
|
+
activesupport (3.2.14)
|
18
|
+
i18n (~> 0.6, >= 0.6.4)
|
19
|
+
multi_json (~> 1.0)
|
20
|
+
addressable (2.3.5)
|
21
|
+
builder (3.0.4)
|
22
|
+
diff-lcs (1.1.3)
|
23
|
+
erubis (2.7.0)
|
24
|
+
faraday (0.8.8)
|
25
|
+
multipart-post (~> 1.2.0)
|
26
|
+
git (1.2.5)
|
27
|
+
github_api (0.10.1)
|
28
|
+
addressable
|
29
|
+
faraday (~> 0.8.1)
|
30
|
+
hashie (>= 1.2)
|
31
|
+
multi_json (~> 1.4)
|
32
|
+
nokogiri (~> 1.5.2)
|
33
|
+
oauth2
|
34
|
+
hashie (2.0.5)
|
35
|
+
highline (1.6.19)
|
36
|
+
hike (1.2.3)
|
37
|
+
httpauth (0.2.0)
|
38
|
+
i18n (0.6.4)
|
39
|
+
jeweler (1.8.6)
|
40
|
+
builder
|
41
|
+
bundler (~> 1.0)
|
42
|
+
git (>= 1.2.5)
|
43
|
+
github_api (= 0.10.1)
|
44
|
+
highline (>= 1.6.15)
|
45
|
+
nokogiri (= 1.5.10)
|
46
|
+
rake
|
47
|
+
rdoc
|
48
|
+
journey (1.0.4)
|
49
|
+
json (1.8.0)
|
50
|
+
jwt (0.1.8)
|
51
|
+
multi_json (>= 1.5)
|
52
|
+
multi_json (1.7.8)
|
53
|
+
multi_xml (0.5.5)
|
54
|
+
multipart-post (1.2.0)
|
55
|
+
nokogiri (1.5.10)
|
56
|
+
oauth2 (0.9.2)
|
57
|
+
faraday (~> 0.8)
|
58
|
+
httpauth (~> 0.2)
|
59
|
+
jwt (~> 0.1.4)
|
60
|
+
multi_json (~> 1.0)
|
61
|
+
multi_xml (~> 0.5)
|
62
|
+
rack (~> 1.2)
|
63
|
+
rack (1.4.5)
|
64
|
+
rack-cache (1.2)
|
65
|
+
rack (>= 0.4)
|
66
|
+
rack-test (0.6.2)
|
67
|
+
rack (>= 1.0)
|
68
|
+
rake (10.1.0)
|
69
|
+
rdoc (3.12.2)
|
70
|
+
json (~> 1.4)
|
71
|
+
rspec (2.8.0)
|
72
|
+
rspec-core (~> 2.8.0)
|
73
|
+
rspec-expectations (~> 2.8.0)
|
74
|
+
rspec-mocks (~> 2.8.0)
|
75
|
+
rspec-core (2.8.0)
|
76
|
+
rspec-expectations (2.8.0)
|
77
|
+
diff-lcs (~> 1.1.2)
|
78
|
+
rspec-mocks (2.8.0)
|
79
|
+
simplecov (0.7.1)
|
80
|
+
multi_json (~> 1.0)
|
81
|
+
simplecov-html (~> 0.7.1)
|
82
|
+
simplecov-html (0.7.1)
|
83
|
+
sprockets (2.2.2)
|
84
|
+
hike (~> 1.2)
|
85
|
+
multi_json (~> 1.0)
|
86
|
+
rack (~> 1.0)
|
87
|
+
tilt (~> 1.1, != 1.3.0)
|
88
|
+
tilt (1.4.1)
|
89
|
+
|
90
|
+
PLATFORMS
|
91
|
+
ruby
|
92
|
+
|
93
|
+
DEPENDENCIES
|
94
|
+
actionpack (~> 3)
|
95
|
+
bundler (~> 1.0.0)
|
96
|
+
jeweler (~> 1.8.4)
|
97
|
+
rdoc (~> 3.12)
|
98
|
+
rspec (~> 2.8.0)
|
99
|
+
simplecov
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2013 Farley Knight Consulting, LLC
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,95 @@
|
|
1
|
+
# scaffoldr
|
2
|
+
|
3
|
+
Start your Rails 3.1+ application with some default layouts, styled by
|
4
|
+
Twitter Bootstrap. The available layouts are the ones
|
5
|
+
from [The Twitter Bootstrap documentation](http://getbootstrap.com/2.3.2/getting-started.html#examples).
|
6
|
+
|
7
|
+
# Usage
|
8
|
+
|
9
|
+
Add to your Gemfile:
|
10
|
+
|
11
|
+
gem 'scaffoldr', :git => 'git@github.com:EncomLabs/scaffoldr.git'
|
12
|
+
gem 'twitter-bootstrap-rails'
|
13
|
+
|
14
|
+
Right now there is a bug where we can't add the
|
15
|
+
twitter-bootstrap-rails gem as a dependency, due to bundler errors, so
|
16
|
+
include that in your Gemfile as well.
|
17
|
+
|
18
|
+
Run the twitter-bootstrap-rails `static` or `less` installation so
|
19
|
+
that the Twitter Bootstrap stylesheets and javascript are included in
|
20
|
+
your application manifest files. The below example installs the `static`
|
21
|
+
version:
|
22
|
+
|
23
|
+
rails g bootstrap:install static
|
24
|
+
|
25
|
+
Generate a bootstrap example layout for yourself. Either of the following will work:
|
26
|
+
|
27
|
+
**Warning: This will remove and overwrite your application.html.erb/haml file.**
|
28
|
+
|
29
|
+
rails g bootstrap:layout:starter
|
30
|
+
rails g bootstrap:layout:basic
|
31
|
+
rails g bootstrap:layout:fluid
|
32
|
+
rails g bootstrap:layout:marketing_narrow
|
33
|
+
rails g bootstrap:layout:justified_nav
|
34
|
+
|
35
|
+
The layouts are also available in HAML form:
|
36
|
+
|
37
|
+
rails g bootstrap:layout:starter --template-engine=haml
|
38
|
+
|
39
|
+
# Examples
|
40
|
+
|
41
|
+
## Starter
|
42
|
+
|
43
|
+

|
44
|
+
|
45
|
+
## Basic
|
46
|
+
|
47
|
+

|
48
|
+
|
49
|
+
## Fluid
|
50
|
+
|
51
|
+

|
52
|
+
|
53
|
+
## Marketing Narrow
|
54
|
+
|
55
|
+

|
56
|
+
|
57
|
+
## Justified Nav
|
58
|
+
|
59
|
+

|
60
|
+
|
61
|
+
# Development
|
62
|
+
|
63
|
+
Here are the commands mikedll uses to exercise the code manually. First we presume a Rails application
|
64
|
+
template, named `gemtest.rb`:
|
65
|
+
|
66
|
+
gem 'twitter-bootstrap-rails'
|
67
|
+
gem 'haml'
|
68
|
+
gem 'scaffoldr', '0.1.0', :path => '/home/USERHOMEDIRECTORY/work/scaffoldr'
|
69
|
+
|
70
|
+
Then run these two commands to rapidly execute a full new app and
|
71
|
+
scaffold action. The second assumes you're already in the target app
|
72
|
+
directory, dino_dictionary. That is, *it assumes you are in the middle
|
73
|
+
of a redeploy loop*. Below "dino dictionary" is used as the name of the app, but
|
74
|
+
that's arbitrary of course.
|
75
|
+
|
76
|
+
rm -rf dino_dictionary; rails new dino_dictionary -m ~/PATH/TO/gemtest.rb
|
77
|
+
cd ..; cd dino_dictionary; rails g bootstrap:install static; rails g bootstrap:layout:starter --template-engine=haml; rails s
|
78
|
+
|
79
|
+
## Tips
|
80
|
+
|
81
|
+
- Look at the rails generators from other gems such as simple_form to
|
82
|
+
get an idea of how they work.
|
83
|
+
|
84
|
+
- The command-line invocation is derived from
|
85
|
+
the module namespacing, and directory structure, of where you place
|
86
|
+
the generator file in the generators directory.
|
87
|
+
|
88
|
+
# Contributors
|
89
|
+
|
90
|
+
- [Mike De La Loza](http://www.mikedll.com)
|
91
|
+
|
92
|
+
# Copyright
|
93
|
+
|
94
|
+
Copyright (c) 2013 Encom Labs. See LICENSE.txt for further details.
|
95
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'bundler'
|
5
|
+
begin
|
6
|
+
Bundler.setup(:default, :development)
|
7
|
+
rescue Bundler::BundlerError => e
|
8
|
+
$stderr.puts e.message
|
9
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
+
exit e.status_code
|
11
|
+
end
|
12
|
+
require 'rake'
|
13
|
+
|
14
|
+
require 'jeweler'
|
15
|
+
Jeweler::Tasks.new do |gem|
|
16
|
+
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
17
|
+
gem.name = "scaffoldr"
|
18
|
+
gem.homepage = "http://encomlabs.github.io/scaffoldr/"
|
19
|
+
gem.license = "MIT"
|
20
|
+
gem.summary = %Q{Twitter Bootstrap scaffolding layouts to get your app started.}
|
21
|
+
gem.description = %Q{Create scaffolding layouts for your application quickly. }
|
22
|
+
gem.email = "mikedll@mikedll.com"
|
23
|
+
gem.authors = ["Farley Knight Consulting, LLC", "Mike De La Loza"]
|
24
|
+
# dependencies defined in Gemfile
|
25
|
+
end
|
26
|
+
Jeweler::RubygemsDotOrgTasks.new
|
27
|
+
|
28
|
+
require 'rspec/core'
|
29
|
+
require 'rspec/core/rake_task'
|
30
|
+
RSpec::Core::RakeTask.new(:spec) do |spec|
|
31
|
+
spec.pattern = FileList['spec/**/*_spec.rb']
|
32
|
+
end
|
33
|
+
|
34
|
+
RSpec::Core::RakeTask.new(:rcov) do |spec|
|
35
|
+
spec.pattern = 'spec/**/*_spec.rb'
|
36
|
+
spec.rcov = true
|
37
|
+
end
|
38
|
+
|
39
|
+
task :default => :spec
|
40
|
+
|
41
|
+
require 'rdoc/task'
|
42
|
+
Rake::RDocTask.new do |rdoc|
|
43
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
44
|
+
|
45
|
+
rdoc.rdoc_dir = 'rdoc'
|
46
|
+
rdoc.title = "scaffoldr #{version}"
|
47
|
+
rdoc.rdoc_files.include('README*')
|
48
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
49
|
+
end
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.1.0
|
data/images/Basic.png
ADDED
Binary file
|
data/images/Fluid.png
ADDED
Binary file
|
Binary file
|
Binary file
|
data/images/Starter.png
ADDED
Binary file
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'generators/bootstrap/layout/generator_base'
|
2
|
+
|
3
|
+
module Bootstrap
|
4
|
+
module Layout
|
5
|
+
module Generators
|
6
|
+
class BasicGenerator < Bootstrap::Layout::GeneratorBase
|
7
|
+
source_root File.expand_path('../../templates', __FILE__)
|
8
|
+
desc "Create basic scaffolding layout file."
|
9
|
+
def nav_second_tier; true; end;
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'generators/bootstrap/layout/generator_base'
|
2
|
+
|
3
|
+
module Bootstrap
|
4
|
+
module Layout
|
5
|
+
module Generators
|
6
|
+
class FluidGenerator < Bootstrap::Layout::GeneratorBase
|
7
|
+
source_root File.expand_path('../../templates', __FILE__)
|
8
|
+
desc "Create fluid scaffolding layout file."
|
9
|
+
def nav_second_tier; true; end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module Bootstrap
|
2
|
+
module Layout
|
3
|
+
class GeneratorBase < Rails::Generators::Base
|
4
|
+
|
5
|
+
attr_accessor :style, :body, :app_name
|
6
|
+
|
7
|
+
class_option :template_engine
|
8
|
+
|
9
|
+
def nav_second_tier; false; end
|
10
|
+
|
11
|
+
def create_layout
|
12
|
+
# Heavily from twitter-bootstrap-rails
|
13
|
+
app = ::Rails.application
|
14
|
+
self.app_name = app.class.to_s.split("::").first
|
15
|
+
layout_name = self.class.name.chomp("Generator").demodulize.underscore
|
16
|
+
engine = options[:template_engine] || :erb
|
17
|
+
context = instance_eval('binding')
|
18
|
+
self.style = ERB.new(::File.new(::File.expand_path(find_in_source_paths("#{layout_name}.css"))).read).result(context)
|
19
|
+
self.body = ERB.new(::File.new(::File.expand_path(find_in_source_paths("#{layout_name}.html.#{engine}"))).read).result(context)
|
20
|
+
|
21
|
+
remove_file "app/views/layouts/application.html.erb"
|
22
|
+
remove_file "app/views/layouts/application.html.haml"
|
23
|
+
|
24
|
+
template "base.html.#{engine}", "app/views/layouts/application.html.#{engine}"
|
25
|
+
remove_file "public/index.html"
|
26
|
+
copy_file "_nav.html.#{engine}", "app/views/shared/_nav.html.#{engine}"
|
27
|
+
copy_file "_nav_second_tier.html.#{engine}", "app/views/shared/_nav_second_tier.html.#{engine}" if nav_second_tier
|
28
|
+
copy_file "home_controller.rb.erb", "app/controllers/home_controller.rb"
|
29
|
+
template "index.html.#{engine}", "app/views/home/index.html.#{engine}"
|
30
|
+
end
|
31
|
+
|
32
|
+
def routes
|
33
|
+
route 'root :to => "home#index"'
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'generators/bootstrap/layout/generator_base'
|
2
|
+
|
3
|
+
module Bootstrap
|
4
|
+
module Layout
|
5
|
+
module Generators
|
6
|
+
class JustifiedNavGenerator < Bootstrap::Layout::GeneratorBase
|
7
|
+
source_root File.expand_path('../../templates', __FILE__)
|
8
|
+
desc "Create justfied nav scaffolding layout file."
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'generators/bootstrap/layout/generator_base'
|
2
|
+
|
3
|
+
module Bootstrap
|
4
|
+
module Layout
|
5
|
+
module Generators
|
6
|
+
class MarketingNarrowGenerator < Bootstrap::Layout::GeneratorBase
|
7
|
+
source_root File.expand_path('../../templates', __FILE__)
|
8
|
+
desc "Create marketing narrow scaffolding layout file."
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|