sinatra-template 1.2.0 → 1.3.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.
@@ -8,34 +8,28 @@ module Sinatra
8
8
  def self.help
9
9
  "app_name"
10
10
  end
11
-
12
- def initialize(*args)
13
- super
14
- @app_dir = File.expand_path(pwd)
15
- end
16
11
 
17
12
  def classified
18
13
  "#{self.name.classify}App"
19
14
  end
20
15
 
21
16
  def call
22
- path = File.expand_path(File.join(@app_dir, "apps", "#{self.underscored}.rb"))
23
- begin
24
- rm path, verbose: true
25
- rescue Errno::ENOENT => e
26
- end
27
- path = File.expand_path(File.join(@app_dir, "apps", "views", self.underscored))
28
- begin
29
- rm_r path, verbose: true
30
- rescue Errno::ENOENT => e
31
- end
32
- path = File.expand_path(File.join(@app_dir, "spec", "apps", "#{self.underscored}_spec.rb"))
33
- begin
34
- rm path, verbose: true
35
- rescue Errno::ENOENT => e
36
- end
17
+ path = app_path("apps", "#{self.underscored}.rb")
18
+ rm path
19
+
20
+ path = app_path("apps", "views", self.underscored)
21
+ rm_r path
22
+
23
+ path = app_path("spec", "apps", "#{self.underscored}_spec.rb")
24
+ rm path
25
+
26
+ path = app_path("assets", "javascripts", "#{self.underscored}.js.coffee")
27
+ rm path
28
+
29
+ path = app_path("assets", "stylesheets", "#{self.underscored}.css.scss")
30
+ rm path
37
31
 
38
- path = File.expand_path(File.join(@app_dir, "config.ru"))
32
+ path = app_path("config.ru")
39
33
  old = File.read(path)
40
34
  File.open(path, "w") do |file|
41
35
  map = <<-EOF
@@ -9,11 +9,6 @@ module Sinatra
9
9
  "app_name"
10
10
  end
11
11
 
12
- def initialize(*args)
13
- super
14
- @app_dir = File.expand_path(pwd)
15
- end
16
-
17
12
  def classified
18
13
  "#{self.name.classify}App"
19
14
  end
@@ -21,18 +16,24 @@ module Sinatra
21
16
  def call
22
17
  # mkdir self.underscored, verbose: true
23
18
  %w{apps spec/apps}.each do |dir|
24
- Dir[File.expand_path(File.join(dir, "**", "*"), Sinatra.template_dir)].each do |f|
19
+ Dir[template_path("**", "*")].each do |f|
25
20
  if File.directory?(f)
26
- mkdir_p clean_string(f), verbose: true
21
+ FileUtils.mkdir_p clean_string(f), verbose: true
27
22
  else
28
- mkdir_p clean_string(File.dirname(f)), verbose: true
23
+ FileUtils.mkdir_p clean_string(File.dirname(f)), verbose: true
29
24
  File.open(clean_string(f), 'w') do |file|
30
25
  file.puts clean_string(File.read(f))
31
26
  end
32
27
  end
33
28
  end
34
29
  end
35
- File.open(File.expand_path(File.join(@app_dir, "config.ru")), "a") do |file|
30
+ File.open(app_path("assets", "javascripts", "#{self.underscored}.js.coffee"), 'w') do |file|
31
+ file.puts ""
32
+ end
33
+ File.open(app_path("assets", "stylesheets", "#{self.underscored}.css.scss"), 'w') do |file|
34
+ file.puts ""
35
+ end
36
+ File.open(app_path("config.ru"), "a") do |file|
36
37
  file.puts <<-EOF
37
38
  map "/#{self.underscored}" do
38
39
  run #{self.classified}
@@ -40,19 +41,6 @@ module Sinatra
40
41
  EOF
41
42
  end
42
43
 
43
- path = File.expand_path(File.join(@app_dir, "spec", "apps", "#{self.underscored}_spec.rb"))
44
- mkdir_p File.dirname(path), verbose: true
45
- File.open(path, 'w') do |file|
46
- file.puts <<-EOF
47
- require 'spec_helper'
48
-
49
- describe #{self.classified} do
50
-
51
- it "does something"
52
-
53
- end
54
- EOF
55
- end
56
44
  end
57
45
 
58
46
  end
@@ -23,5 +23,27 @@ module Sinatra
23
23
  system command
24
24
  end
25
25
 
26
+ def rm(path)
27
+ begin
28
+ FileUtils.rm path, verbose: true
29
+ rescue Errno::ENOENT => e
30
+ end
31
+ end
32
+
33
+ def rm_r(path)
34
+ begin
35
+ FileUtils.rm_r path, verbose: true
36
+ rescue Errno::ENOENT => e
37
+ end
38
+ end
39
+
40
+ def app_path(*path)
41
+ File.expand_path(File.join(@app_dir, *path))
42
+ end
43
+
44
+ def template_path(*path)
45
+ File.expand_path(File.join(Sinatra.template_dir, *path))
46
+ end
47
+
26
48
  end
27
49
  end
@@ -10,7 +10,7 @@ module Sinatra
10
10
  end
11
11
 
12
12
  def call
13
- path = File.expand_path(File.join(@app_dir, "setup.rb"))
13
+ path = app_path("setup.rb")
14
14
  cmd "pry -r #{path}"
15
15
  end
16
16
 
@@ -10,7 +10,7 @@ module Sinatra
10
10
 
11
11
  def initialize(args)
12
12
  self.args = args
13
- @app_dir = File.expand_path(pwd)
13
+ @app_dir = File.expand_path(FileUtils.pwd)
14
14
  self.env = args[1] || "development"
15
15
  ENV["RACK_ENV"] = self.env
16
16
  end
@@ -8,23 +8,10 @@ module Sinatra
8
8
  def self.help
9
9
  "model_name"
10
10
  end
11
-
12
- def initialize(*args)
13
- super
14
- @app_dir = File.expand_path(pwd)
15
- end
16
11
 
17
12
  def call
18
- path = File.expand_path(File.join(@app_dir, "models", "#{self.underscored}.rb"))
19
- begin
20
- rm path, verbose: true
21
- rescue Errno::ENOENT => e
22
- end
23
- path = File.expand_path(File.join(@app_dir, "spec", "models", "#{self.underscored}_spec.rb"))
24
- begin
25
- rm path, verbose: true
26
- rescue Errno::ENOENT => e
27
- end
13
+ rm app_path("models", "#{self.underscored}.rb")
14
+ rm app_path("spec", "models", "#{self.underscored}_spec.rb")
28
15
  end
29
16
 
30
17
  end
@@ -9,14 +9,9 @@ module Sinatra
9
9
  "model_name"
10
10
  end
11
11
 
12
- def initialize(*args)
13
- super
14
- @app_dir = File.expand_path(pwd)
15
- end
16
-
17
12
  def call
18
- path = File.expand_path(File.join(@app_dir, "models", "#{self.underscored}.rb"))
19
- mkdir_p File.dirname(path), verbose: true
13
+ path = app_path("models", "#{self.underscored}.rb")
14
+ FileUtils.mkdir_p File.dirname(path), verbose: true
20
15
  File.open(path, 'w') do |file|
21
16
  file.puts <<-EOF
22
17
  class #{self.classified}
@@ -27,8 +22,8 @@ module Sinatra
27
22
  EOF
28
23
  end
29
24
 
30
- path = File.expand_path(File.join(@app_dir, "spec", "models", "#{self.underscored}_spec.rb"))
31
- mkdir_p File.dirname(path), verbose: true
25
+ path = app_path("spec", "models", "#{self.underscored}_spec.rb")
26
+ FileUtils.mkdir_p File.dirname(path), verbose: true
32
27
  File.open(path, 'w') do |file|
33
28
  file.puts <<-EOF
34
29
  require 'spec_helper'
@@ -1,6 +1,5 @@
1
1
  module Sinatra
2
2
  class NameCommand < Sinatra::Command
3
- include FileUtils
4
3
 
5
4
  attr_accessor :args, :name
6
5
 
@@ -19,6 +18,7 @@ module Sinatra
19
18
  def initialize(args)
20
19
  self.args = args
21
20
  self.name = ARGV[1]
21
+ @app_dir = File.expand_path(FileUtils.pwd)
22
22
  end
23
23
 
24
24
  def clean_string(f)
@@ -11,7 +11,7 @@ module Sinatra
11
11
 
12
12
  def initialize(*args)
13
13
  super
14
- @app_dir = File.expand_path(File.join(pwd, self.underscored))
14
+ @app_dir = File.expand_path(File.join(FileUtils.pwd, self.underscored))
15
15
  end
16
16
 
17
17
  def classified
@@ -19,17 +19,31 @@ module Sinatra
19
19
  end
20
20
 
21
21
  def call
22
- mkdir self.underscored, verbose: true
23
- Dir[File.expand_path(File.join("**", "*"), Sinatra.template_dir)].each do |f|
22
+ FileUtils.mkdir self.underscored, verbose: true
23
+ Dir[template_path("**", "*")].each do |f|
24
24
  if File.directory?(f)
25
- mkdir_p clean_string(f), verbose: true
25
+ FileUtils.mkdir_p clean_string(f), verbose: true
26
26
  else
27
- mkdir_p clean_string(File.dirname(f)), verbose: true
27
+ FileUtils.mkdir_p clean_string(File.dirname(f)), verbose: true
28
28
  File.open(clean_string(f), 'w') do |file|
29
29
  file.puts clean_string(File.read(f))
30
30
  end
31
31
  end
32
32
  end
33
+ File.open(app_path(".gitignore"), "w") do |f|
34
+ f.puts File.read(template_path(".gitignore"))
35
+ end
36
+ Dir[app_path("**", "*")].each do |file|
37
+ if File.directory?(file)
38
+ if Dir[File.join(file, "**", "*")].empty?
39
+ File.open(File.join(file, ".git-keep"), 'w') {|f| f.puts ""}
40
+ end
41
+ end
42
+ end
43
+ FileUtils.cd app_path
44
+ system "git init"
45
+ system "git add ."
46
+ system "git commit -a -m 'Initial Commit'"
33
47
  end
34
48
 
35
49
  end
@@ -10,11 +10,11 @@ module Sinatra
10
10
  end
11
11
 
12
12
  def call
13
- path = File.expand_path(File.join(@app_dir, "Procfile.#{self.env}"))
13
+ path = app_path("Procfile.#{self.env}")
14
14
  if File.exists?(path)
15
15
  cmd "bundle exec foreman start -f #{path}"
16
16
  else
17
- path = File.expand_path(File.join(@app_dir, "Procfile"))
17
+ path = app_path("Procfile")
18
18
  cmd "bundle exec foreman start -f #{path}"
19
19
  end
20
20
  end
@@ -1,5 +1,5 @@
1
1
  module Sinatra
2
2
  module Template
3
- VERSION = "1.2.0"
3
+ VERSION = "1.3.0"
4
4
  end
5
5
  end
@@ -8,6 +8,7 @@ gem 'shotgun'
8
8
  gem 'foreman'
9
9
  gem 'mongoid'
10
10
  gem 'activesupport'
11
+ gem 'eco'
11
12
 
12
13
  group :development, :test do
13
14
  gem 'rack-test'
@@ -13,12 +13,18 @@ GEM
13
13
  i18n (~> 0.6)
14
14
  multi_json (~> 1.0)
15
15
  builder (3.0.4)
16
+ coderay (1.0.8)
16
17
  coffee-script (2.2.0)
17
18
  coffee-script-source
18
19
  execjs
19
20
  coffee-script-source (1.4.0)
20
21
  daemons (1.1.9)
21
22
  diff-lcs (1.1.3)
23
+ eco (1.0.0)
24
+ coffee-script
25
+ eco-source
26
+ execjs
27
+ eco-source (1.1.0.rc.1)
22
28
  eventmachine (1.0.0)
23
29
  execjs (1.4.0)
24
30
  multi_json (~> 1.0)
@@ -26,6 +32,7 @@ GEM
26
32
  thor (>= 0.13.6)
27
33
  hike (1.2.1)
28
34
  i18n (0.6.1)
35
+ method_source (0.8.1)
29
36
  mongoid (3.0.15)
30
37
  activemodel (~> 3.1)
31
38
  moped (~> 1.1)
@@ -34,6 +41,10 @@ GEM
34
41
  moped (1.3.1)
35
42
  multi_json (1.5.0)
36
43
  origin (1.0.11)
44
+ pry (0.9.10)
45
+ coderay (~> 1.0.5)
46
+ method_source (~> 0.8)
47
+ slop (~> 3.3.1)
37
48
  rack (1.4.1)
38
49
  rack-protection (1.3.2)
39
50
  rack
@@ -54,6 +65,7 @@ GEM
54
65
  rack (~> 1.3, >= 1.3.6)
55
66
  rack-protection (~> 1.2)
56
67
  tilt (~> 1.3, >= 1.3.3)
68
+ slop (3.3.3)
57
69
  sprockets (2.2.2)
58
70
  hike (~> 1.2)
59
71
  multi_json (~> 1.0)
@@ -73,8 +85,10 @@ PLATFORMS
73
85
  DEPENDENCIES
74
86
  activesupport
75
87
  coffee-script
88
+ eco
76
89
  foreman
77
90
  mongoid
91
+ pry
78
92
  rack-test
79
93
  rspec
80
94
  sass
@@ -8,8 +8,10 @@
8
8
  <meta name="author" content="">
9
9
 
10
10
  <script src='/assets/application.js'></script>
11
+ <script src='/assets/template_app.js'></script>
11
12
  <%= bootstrap_assets %>
12
13
  <link href="/assets/application.css" rel="stylesheet">
14
+ <link href="/assets/template_app.css" rel="stylesheet">
13
15
 
14
16
  <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
15
17
  <!--[if lt IE 9]>
@@ -2,6 +2,7 @@
2
2
  #= require json2
3
3
  #= require underscore
4
4
  #= require backbone
5
+ #= require_tree ../templates
5
6
 
6
7
  $ ->
7
8
  $("#main").append("jQuery works!")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sinatra-template
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -69,7 +69,9 @@ files:
69
69
  - template_app/apps/views/template_app/index.erb
70
70
  - template_app/apps/views/template_app/layout.erb
71
71
  - template_app/assets/javascripts/application.js.coffee
72
+ - template_app/assets/javascripts/template_app.js.coffee
72
73
  - template_app/assets/stylesheets/application.css.scss
74
+ - template_app/assets/stylesheets/template_app.css.scss
73
75
  - template_app/assets/templates/.git-keep
74
76
  - template_app/config.ru
75
77
  - template_app/models/.git-keep