groove 0.0.6 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (7) hide show
  1. data/README.md +11 -5
  2. data/Rakefile +4 -3
  3. data/VERSION +1 -1
  4. data/bin/groove +44 -52
  5. data/groove.gemspec +10 -6
  6. data/install.rb +1 -0
  7. metadata +19 -8
data/README.md CHANGED
@@ -1,22 +1,29 @@
1
1
  Groove
2
2
  ======
3
3
 
4
- A web application stack composed of Sinatra, MongoDB, Effigy, and Hoptoad.
4
+ Generator to create a Sinatra, MongoDB, Effigy, and Hoptoad web app.
5
5
 
6
6
  Usage
7
7
  -----
8
8
 
9
- thor groove weekapaug
9
+ groove weekapaug
10
+
11
+ create weekapaug/config.ru
12
+ create weekapaug/app.rb
13
+ create weekapaug/templates/index.html
14
+ create weekapaug/views/index.rb
15
+
16
+ cd weekapaug
10
17
 
11
18
  vim templates/index.html
12
19
 
13
20
  <!DOCTYPE html>
14
21
  <html>
15
22
  <head>
16
- <title>weekapaug groove</title>
23
+ <title>weekapaug</title>
17
24
  </head>
18
25
  <body>
19
- <h1>sharing in the weekapaug groove</h1>
26
+ <h1>weekapaug</h1>
20
27
  </body>
21
28
  </html>
22
29
 
@@ -38,4 +45,3 @@ heroku config
38
45
  DATABASE_USER => user
39
46
  DATABASE_PASSWORD => password
40
47
  HOPTOAD => apikey123
41
-
data/Rakefile CHANGED
@@ -2,19 +2,20 @@ require 'jeweler'
2
2
 
3
3
  Jeweler::Tasks.new do |gem|
4
4
  gem.name = "groove"
5
- gem.summary = "A web application stack composed of Sinatra, MongoDB, Effigy, and Hoptoad."
6
- gem.description = "A web application stack composed of Sinatra, MongoDB, Effigy, and Hoptoad."
5
+ gem.summary = "Generator to create a Sinatra, MongoDB, Effigy, and Hoptoad web app."
6
+ gem.description = "Generator to create a Sinatra, MongoDB, Effigy, and Hoptoad web app."
7
7
  gem.email = "dcroak@thoughtbot.com"
8
8
  gem.homepage = "http://github.com/dancroak/groove"
9
9
  gem.authors = ["Dan Croak"]
10
10
  gem.bindir = "bin"
11
11
  gem.executables = ["groove"]
12
12
 
13
- gem.add_dependency('x')
14
13
  gem.add_dependency('sinatra')
15
14
  gem.add_dependency('mongo')
16
15
  gem.add_dependency('effigy')
17
16
  gem.add_dependency('rack_hoptoad')
17
+ gem.add_dependency('x')
18
+ gem.add_dependency('thor')
18
19
  end
19
20
 
20
21
  Jeweler::GemcutterTasks.new
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.6
1
+ 0.1.0
data/bin/groove CHANGED
@@ -1,71 +1,63 @@
1
1
  #!/usr/bin/env ruby
2
- # -*- mode: ruby -*-
3
2
 
3
+ require 'rubygems'
4
4
  require 'thor'
5
5
 
6
+ module Grooove
7
+ Rackup = <<-RUBY
8
+ Groove.config = { :db => ENV['DATABASE'] || '#{name}',
9
+ :db_url => ENV['DATABASE_URL'] || 'localhost',
10
+ :db_user => ENV['DATABASE_USER'],
11
+ :db_password => ENV['DATABASE_PASSWORD'],
12
+ :hoptoad => ENV['HOPTOAD'] }
13
+ RUBY
14
+
15
+ App = <<-RUBY
16
+ get '/' do
17
+ effigy :index
18
+ end
19
+ RUBY
20
+
21
+ Template = <<-HTML
22
+ <!DOCTYPE html>
23
+ <html>
24
+ <head>
25
+ <title>#{name}</title>
26
+ </head>
27
+ <body>
28
+ <h1>#{name}</h1>
29
+ </body>
30
+ </html>
31
+ HTML
32
+
33
+ View = <<-RUBY
34
+ class IndexView < Effigy::View
35
+ def transform
36
+ end
37
+ end
38
+ RUBY
39
+ end
40
+
6
41
  class Groove < Thor::Group
7
42
  include Thor::Actions
8
43
 
9
44
  argument :name
10
45
 
11
- def create_directory
12
- directory(name)
13
- end
14
-
15
46
  def create_rackup
16
- create_file("#{name}/config.ru") do
17
- <<-RUBY
18
- Groove.config = { :db => ENV['DATABASE'] || '#{name}',
19
- :db_url => ENV['DATABASE_URL'] || 'localhost',
20
- :db_user => ENV['DATABASE_USER'],
21
- :db_password => ENV['DATABASE_PASSWORD'],
22
- :hoptoad => ENV['HOPTOAD'] }
23
- RUBY
24
- end
47
+ create_file("#{name}/config.ru") { Grooove::Rackup }
25
48
  end
26
49
 
27
50
  def create_app
28
- create_file("#{name}/app.rb") do
29
- <<-RUBY
30
- get '/' do
31
- effigy :index
32
- end
33
- RUBY
34
- end
35
- end
36
-
37
- def create_templates_directory
38
- directory("#{name}/templates")
51
+ create_file("#{name}/app.rb") { Grooove::App }
39
52
  end
40
53
 
41
- def create_index_template
42
- create_file("#{name}/templates/index.html") do
43
- <<-HTML
44
- <!DOCTYPE html>
45
- <html>
46
- <head>
47
- <title>#{name}</title>
48
- </head>
49
- <body>
50
- <h1>#{name}</h1>
51
- </body>
52
- </html>
53
- HTML
54
- end
54
+ def create_template
55
+ create_file("#{name}/templates/index.html") { Grooove::Template }
55
56
  end
56
57
 
57
- def create_views_directory
58
- directory("#{name}/views")
59
- end
60
-
61
- def create_index_template
62
- create_file("#{name}/views/index.rb") do
63
- <<-RUBY
64
- class IndexView < Effigy::View
65
- def transform
66
- end
67
- end
68
- RUBY
69
- end
58
+ def create_view
59
+ create_file("#{name}/views/index.rb") { Grooove::View }
70
60
  end
71
61
  end
62
+
63
+ Groove.start
data/groove.gemspec CHANGED
@@ -5,13 +5,13 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{groove}
8
- s.version = "0.0.6"
8
+ s.version = "0.1.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Dan Croak"]
12
12
  s.date = %q{2009-12-31}
13
13
  s.default_executable = %q{groove}
14
- s.description = %q{A web application stack composed of Sinatra, MongoDB, Effigy, and Hoptoad.}
14
+ s.description = %q{Generator to create a Sinatra, MongoDB, Effigy, and Hoptoad web app.}
15
15
  s.email = %q{dcroak@thoughtbot.com}
16
16
  s.executables = ["groove"]
17
17
  s.extra_rdoc_files = [
@@ -24,6 +24,7 @@ Gem::Specification.new do |s|
24
24
  "VERSION",
25
25
  "bin/groove",
26
26
  "groove.gemspec",
27
+ "install.rb",
27
28
  "lib/groove.rb",
28
29
  "lib/groove/effigy.rb",
29
30
  "lib/groove/hoptoad.rb",
@@ -34,31 +35,34 @@ Gem::Specification.new do |s|
34
35
  s.rdoc_options = ["--charset=UTF-8"]
35
36
  s.require_paths = ["lib"]
36
37
  s.rubygems_version = %q{1.3.5}
37
- s.summary = %q{A web application stack composed of Sinatra, MongoDB, Effigy, and Hoptoad.}
38
+ s.summary = %q{Generator to create a Sinatra, MongoDB, Effigy, and Hoptoad web app.}
38
39
 
39
40
  if s.respond_to? :specification_version then
40
41
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
41
42
  s.specification_version = 3
42
43
 
43
44
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
44
- s.add_runtime_dependency(%q<x>, [">= 0"])
45
45
  s.add_runtime_dependency(%q<sinatra>, [">= 0"])
46
46
  s.add_runtime_dependency(%q<mongo>, [">= 0"])
47
47
  s.add_runtime_dependency(%q<effigy>, [">= 0"])
48
48
  s.add_runtime_dependency(%q<rack_hoptoad>, [">= 0"])
49
+ s.add_runtime_dependency(%q<x>, [">= 0"])
50
+ s.add_runtime_dependency(%q<thor>, [">= 0"])
49
51
  else
50
- s.add_dependency(%q<x>, [">= 0"])
51
52
  s.add_dependency(%q<sinatra>, [">= 0"])
52
53
  s.add_dependency(%q<mongo>, [">= 0"])
53
54
  s.add_dependency(%q<effigy>, [">= 0"])
54
55
  s.add_dependency(%q<rack_hoptoad>, [">= 0"])
56
+ s.add_dependency(%q<x>, [">= 0"])
57
+ s.add_dependency(%q<thor>, [">= 0"])
55
58
  end
56
59
  else
57
- s.add_dependency(%q<x>, [">= 0"])
58
60
  s.add_dependency(%q<sinatra>, [">= 0"])
59
61
  s.add_dependency(%q<mongo>, [">= 0"])
60
62
  s.add_dependency(%q<effigy>, [">= 0"])
61
63
  s.add_dependency(%q<rack_hoptoad>, [">= 0"])
64
+ s.add_dependency(%q<x>, [">= 0"])
65
+ s.add_dependency(%q<thor>, [">= 0"])
62
66
  end
63
67
  end
64
68
 
data/install.rb ADDED
@@ -0,0 +1 @@
1
+ thor install "http://github.com/cypher/thor-git/tree/master/git.thor?raw=true"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: groove
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Croak
@@ -13,7 +13,7 @@ date: 2009-12-31 00:00:00 -05:00
13
13
  default_executable: groove
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: x
16
+ name: sinatra
17
17
  type: :runtime
18
18
  version_requirement:
19
19
  version_requirements: !ruby/object:Gem::Requirement
@@ -23,7 +23,7 @@ dependencies:
23
23
  version: "0"
24
24
  version:
25
25
  - !ruby/object:Gem::Dependency
26
- name: sinatra
26
+ name: mongo
27
27
  type: :runtime
28
28
  version_requirement:
29
29
  version_requirements: !ruby/object:Gem::Requirement
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: "0"
34
34
  version:
35
35
  - !ruby/object:Gem::Dependency
36
- name: mongo
36
+ name: effigy
37
37
  type: :runtime
38
38
  version_requirement:
39
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: "0"
44
44
  version:
45
45
  - !ruby/object:Gem::Dependency
46
- name: effigy
46
+ name: rack_hoptoad
47
47
  type: :runtime
48
48
  version_requirement:
49
49
  version_requirements: !ruby/object:Gem::Requirement
@@ -53,7 +53,17 @@ dependencies:
53
53
  version: "0"
54
54
  version:
55
55
  - !ruby/object:Gem::Dependency
56
- name: rack_hoptoad
56
+ name: x
57
+ type: :runtime
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: "0"
64
+ version:
65
+ - !ruby/object:Gem::Dependency
66
+ name: thor
57
67
  type: :runtime
58
68
  version_requirement:
59
69
  version_requirements: !ruby/object:Gem::Requirement
@@ -62,7 +72,7 @@ dependencies:
62
72
  - !ruby/object:Gem::Version
63
73
  version: "0"
64
74
  version:
65
- description: A web application stack composed of Sinatra, MongoDB, Effigy, and Hoptoad.
75
+ description: Generator to create a Sinatra, MongoDB, Effigy, and Hoptoad web app.
66
76
  email: dcroak@thoughtbot.com
67
77
  executables:
68
78
  - groove
@@ -77,6 +87,7 @@ files:
77
87
  - VERSION
78
88
  - bin/groove
79
89
  - groove.gemspec
90
+ - install.rb
80
91
  - lib/groove.rb
81
92
  - lib/groove/effigy.rb
82
93
  - lib/groove/hoptoad.rb
@@ -109,6 +120,6 @@ rubyforge_project:
109
120
  rubygems_version: 1.3.5
110
121
  signing_key:
111
122
  specification_version: 3
112
- summary: A web application stack composed of Sinatra, MongoDB, Effigy, and Hoptoad.
123
+ summary: Generator to create a Sinatra, MongoDB, Effigy, and Hoptoad web app.
113
124
  test_files: []
114
125