rails-eos 0.2.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 +7 -0
- data/.document +5 -0
- data/Gemfile +15 -0
- data/Gemfile.lock +82 -0
- data/LICENSE.txt +20 -0
- data/README.md +74 -0
- data/Rakefile +53 -0
- data/VERSION +1 -0
- data/bin/eos +217 -0
- data/bin/files/.bowerrc +3 -0
- data/bin/files/.buildpacks +2 -0
- data/bin/files/.gitignore +19 -0
- data/bin/files/Gemfile +56 -0
- data/bin/files/Guardfile +47 -0
- data/bin/files/bower.rb +16 -0
- data/bin/files/development.rb +32 -0
- data/bin/files/home_controller.rb +5 -0
- data/bin/files/index.html.haml +1 -0
- data/bin/files/routes.rb +3 -0
- data/lib/rails-eos.rb +0 -0
- data/rails-eos.gemspec +75 -0
- data/test/helper.rb +34 -0
- data/test/test_rails-eos.rb +7 -0
- metadata +139 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 2294dbb6c05bda5596f7f29b496a9eb340a412f1
|
4
|
+
data.tar.gz: 46ebd9345e642829ac10aa4bc9c84c8fa8cd21c4
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 4d88c6422d763bf96014a33e5e21cdfa6fd1c6b7a0cbb5285414844d7aaed3e686628c524b06b88c84cff4fd61ebeead94bbe2199d7f72001936334f62864561
|
7
|
+
data.tar.gz: a308809e9ae73162990b14a2a712a59b63429123cdcfe4d5dbecc1329dc74731b732eda78e6226cae643d7d27d4cc82e2466b7ad04fa62d10424be4763bc1d21
|
data/.document
ADDED
data/Gemfile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
source "http://rubygems.org"
|
2
|
+
ruby '2.1.0'
|
3
|
+
# Add dependencies required to use your gem here.
|
4
|
+
# Example:
|
5
|
+
# gem "activesupport", ">= 2.3.5"
|
6
|
+
|
7
|
+
# Add dependencies to develop your gem here.
|
8
|
+
# Include everything needed to run rake, tests, features, etc.
|
9
|
+
group :development do
|
10
|
+
gem "shoulda", ">= 0"
|
11
|
+
gem "rdoc", "~> 3.12"
|
12
|
+
gem "bundler", "~> 1.0"
|
13
|
+
gem "jeweler", "~> 2.0.1"
|
14
|
+
gem "simplecov", ">= 0"
|
15
|
+
end
|
data/Gemfile.lock
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
activesupport (4.0.4)
|
5
|
+
i18n (~> 0.6, >= 0.6.9)
|
6
|
+
minitest (~> 4.2)
|
7
|
+
multi_json (~> 1.3)
|
8
|
+
thread_safe (~> 0.1)
|
9
|
+
tzinfo (~> 0.3.37)
|
10
|
+
addressable (2.3.6)
|
11
|
+
atomic (1.1.16)
|
12
|
+
builder (3.2.2)
|
13
|
+
descendants_tracker (0.0.4)
|
14
|
+
thread_safe (~> 0.3, >= 0.3.1)
|
15
|
+
docile (1.1.3)
|
16
|
+
faraday (0.9.0)
|
17
|
+
multipart-post (>= 1.2, < 3)
|
18
|
+
git (1.2.6)
|
19
|
+
github_api (0.11.3)
|
20
|
+
addressable (~> 2.3)
|
21
|
+
descendants_tracker (~> 0.0.1)
|
22
|
+
faraday (~> 0.8, < 0.10)
|
23
|
+
hashie (>= 1.2)
|
24
|
+
multi_json (>= 1.7.5, < 2.0)
|
25
|
+
nokogiri (~> 1.6.0)
|
26
|
+
oauth2
|
27
|
+
hashie (2.0.5)
|
28
|
+
highline (1.6.21)
|
29
|
+
i18n (0.6.9)
|
30
|
+
jeweler (2.0.1)
|
31
|
+
builder
|
32
|
+
bundler (>= 1.0)
|
33
|
+
git (>= 1.2.5)
|
34
|
+
github_api
|
35
|
+
highline (>= 1.6.15)
|
36
|
+
nokogiri (>= 1.5.10)
|
37
|
+
rake
|
38
|
+
rdoc
|
39
|
+
json (1.8.1)
|
40
|
+
jwt (0.1.11)
|
41
|
+
multi_json (>= 1.5)
|
42
|
+
mini_portile (0.5.3)
|
43
|
+
minitest (4.7.5)
|
44
|
+
multi_json (1.9.2)
|
45
|
+
multi_xml (0.5.5)
|
46
|
+
multipart-post (2.0.0)
|
47
|
+
nokogiri (1.6.1)
|
48
|
+
mini_portile (~> 0.5.0)
|
49
|
+
oauth2 (0.9.3)
|
50
|
+
faraday (>= 0.8, < 0.10)
|
51
|
+
jwt (~> 0.1.8)
|
52
|
+
multi_json (~> 1.3)
|
53
|
+
multi_xml (~> 0.5)
|
54
|
+
rack (~> 1.2)
|
55
|
+
rack (1.5.2)
|
56
|
+
rake (10.2.2)
|
57
|
+
rdoc (3.12.2)
|
58
|
+
json (~> 1.4)
|
59
|
+
shoulda (3.5.0)
|
60
|
+
shoulda-context (~> 1.0, >= 1.0.1)
|
61
|
+
shoulda-matchers (>= 1.4.1, < 3.0)
|
62
|
+
shoulda-context (1.2.1)
|
63
|
+
shoulda-matchers (2.5.0)
|
64
|
+
activesupport (>= 3.0.0)
|
65
|
+
simplecov (0.8.2)
|
66
|
+
docile (~> 1.1.0)
|
67
|
+
multi_json
|
68
|
+
simplecov-html (~> 0.8.0)
|
69
|
+
simplecov-html (0.8.0)
|
70
|
+
thread_safe (0.3.1)
|
71
|
+
atomic (>= 1.1.7, < 2)
|
72
|
+
tzinfo (0.3.39)
|
73
|
+
|
74
|
+
PLATFORMS
|
75
|
+
ruby
|
76
|
+
|
77
|
+
DEPENDENCIES
|
78
|
+
bundler (~> 1.0)
|
79
|
+
jeweler (~> 2.0.1)
|
80
|
+
rdoc (~> 3.12)
|
81
|
+
shoulda
|
82
|
+
simplecov
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2014 Sodafight
|
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,74 @@
|
|
1
|
+
# rails-eos
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
## Installing
|
6
|
+
|
7
|
+
<hr>
|
8
|
+
|
9
|
+
Install the gem with:
|
10
|
+
|
11
|
+
```console
|
12
|
+
$ gem install rails-eos
|
13
|
+
```
|
14
|
+
|
15
|
+
<br>
|
16
|
+
## Getting Started
|
17
|
+
|
18
|
+
<hr>
|
19
|
+
|
20
|
+
Generate a new rails project:
|
21
|
+
|
22
|
+
```console
|
23
|
+
$ eos start newapp
|
24
|
+
```
|
25
|
+
|
26
|
+
then:
|
27
|
+
|
28
|
+
```console
|
29
|
+
$ cd newapp
|
30
|
+
```
|
31
|
+
|
32
|
+
finally:
|
33
|
+
|
34
|
+
```console
|
35
|
+
$ eos convert
|
36
|
+
```
|
37
|
+
|
38
|
+
and you're done!
|
39
|
+
|
40
|
+
<br>
|
41
|
+
|
42
|
+
## What it does
|
43
|
+
<hr>
|
44
|
+
|
45
|
+
Here's what Eos will change in your project:
|
46
|
+
|
47
|
+
- Replaces Gemfile.
|
48
|
+
- Views converted to HAML
|
49
|
+
- Creates Home Controller.
|
50
|
+
- Creates first Route.
|
51
|
+
- Creates Guardfile.
|
52
|
+
- Installs Simple Form.
|
53
|
+
- Installs Rspec.
|
54
|
+
- installs Cucumber.
|
55
|
+
- Installs LiveReload.
|
56
|
+
- Installs Bower.
|
57
|
+
|
58
|
+
Other Notes:
|
59
|
+
|
60
|
+
- Devise has been included but not installed.
|
61
|
+
- Bower assets are installed into vendor/assets/components.
|
62
|
+
- Bower components have been added to gitignore - you may want to change this for production.
|
63
|
+
- Check out https://coderwall.com/p/6bmygq or https://gist.github.com/afeld/5704079 for getting bower into production.
|
64
|
+
- You can start the server with `bundle exec guard` and find your app at localhost:5878
|
65
|
+
|
66
|
+
|
67
|
+
## Roadmap
|
68
|
+
|
69
|
+
By 1.0 eos-rails will most likely have:
|
70
|
+
|
71
|
+
- Bower integration ready for production out of the box
|
72
|
+
- A devise booster
|
73
|
+
- A new asset pack just for rails. incl (agnostic styles, simple alerts and some js starter files)
|
74
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,53 @@
|
|
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://guides.rubygems.org/specification-reference/ for more options
|
17
|
+
gem.name = "rails-eos"
|
18
|
+
gem.homepage = "http://github.com/louisrudner/rails-eos"
|
19
|
+
gem.license = "MIT"
|
20
|
+
gem.summary = "An even more opinionated Rails setup."
|
21
|
+
gem.description = "Eos is a power-pack for your Rails apps. Speed through your project setup and enjoy agnostic styling, handy utilities and a good slathering of magic sauce."
|
22
|
+
gem.email = "louis@cosmiclabs.com.au"
|
23
|
+
gem.authors = ["CosmicLabs"]
|
24
|
+
gem.executables = ["eos"]
|
25
|
+
gem.files.include ['bin/files/Gemfile', 'bin/files/routes.rb', 'bin/files/home_controller.rb', 'bin/files/index.html.haml', 'bin/files/Guardfile', 'bin/files/development.rb', 'bin/files/bower.rb', 'bin/files/.gitignore', 'bin/files/.bowerrc']
|
26
|
+
# dependencies defined in Gemfile
|
27
|
+
end
|
28
|
+
Jeweler::RubygemsDotOrgTasks.new
|
29
|
+
|
30
|
+
require 'rake/testtask'
|
31
|
+
Rake::TestTask.new(:test) do |test|
|
32
|
+
test.libs << 'lib' << 'test'
|
33
|
+
test.pattern = 'test/**/test_*.rb'
|
34
|
+
test.verbose = true
|
35
|
+
end
|
36
|
+
|
37
|
+
desc "Code coverage detail"
|
38
|
+
task :simplecov do
|
39
|
+
ENV['COVERAGE'] = "true"
|
40
|
+
Rake::Task['test'].execute
|
41
|
+
end
|
42
|
+
|
43
|
+
task :default => :test
|
44
|
+
|
45
|
+
require 'rdoc/task'
|
46
|
+
Rake::RDocTask.new do |rdoc|
|
47
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
48
|
+
|
49
|
+
rdoc.rdoc_dir = 'rdoc'
|
50
|
+
rdoc.title = "rails-eos #{version}"
|
51
|
+
rdoc.rdoc_files.include('README*')
|
52
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
53
|
+
end
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.2.0
|
data/bin/eos
ADDED
@@ -0,0 +1,217 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "thor"
|
4
|
+
|
5
|
+
class Eos < Thor
|
6
|
+
include Thor::Actions
|
7
|
+
|
8
|
+
default_task :hello
|
9
|
+
|
10
|
+
def self.source_root
|
11
|
+
File.dirname(__FILE__)
|
12
|
+
end
|
13
|
+
#
|
14
|
+
# desc "generate NUMBER APPNAME", "Generates the specified application with your choice of name. App numbers are in the list."
|
15
|
+
# def generate(number, appname)
|
16
|
+
# gen = GENERATORS.find { |g| g["number"] == number}
|
17
|
+
# puts set_color "Running #{gen["source"]} #{appname}", :green, :bold
|
18
|
+
# system("#{gen["source"]} #{appname}")
|
19
|
+
# puts set_color "Project generation complete", :green, :bold
|
20
|
+
# puts set_color "Now you can use the renamer to customize your application's name.", :white, :bold
|
21
|
+
# system("rake secret")
|
22
|
+
# puts set_color "You can use the above string as your new secret in initilizers/secret_token.rb.", :white, :bold
|
23
|
+
# end
|
24
|
+
|
25
|
+
desc "hello", "The rundown of how Eos works."
|
26
|
+
def hello
|
27
|
+
puts '- - - - - - - - - -'
|
28
|
+
puts set_color 'Hey there and welcome to the Eos gem - a sweet powerpack for Ruby on Rails', :white, :bold
|
29
|
+
puts '- - - - - - - - - -'
|
30
|
+
puts set_color '1. Type: \'eos start APP_NAME\' or \'rails new APP_NAME\' to generate a regular rails app.', :white, :bold
|
31
|
+
puts set_color '2. Type: \'cd APP_NAME\' then \'eos convert\' to turn your new app into a totally rhombus Eos app.', :white, :bold
|
32
|
+
puts '- - - - - - - - - -'
|
33
|
+
end
|
34
|
+
|
35
|
+
desc "start APP_NAME", "Generate a regular Rails app."
|
36
|
+
def start(app_name)
|
37
|
+
system("rails new #{app_name}")
|
38
|
+
puts '- - - - - - - - - -'
|
39
|
+
puts set_color "Successfully generated the project named #{app_name} in the current directory.", :white, :bold
|
40
|
+
puts '- - - - - - - - - -'
|
41
|
+
end
|
42
|
+
|
43
|
+
desc "convert", "Eos basic setup."
|
44
|
+
def convert
|
45
|
+
convert_gemfile
|
46
|
+
run_bundle
|
47
|
+
convert_haml
|
48
|
+
setup_home
|
49
|
+
init_guard
|
50
|
+
install_simpleform
|
51
|
+
install_rspec
|
52
|
+
install_cucumber
|
53
|
+
add_livereload
|
54
|
+
install_bower
|
55
|
+
finished_message
|
56
|
+
end
|
57
|
+
|
58
|
+
private
|
59
|
+
|
60
|
+
def convert_gemfile
|
61
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/Gemfile"
|
62
|
+
source_paths << path
|
63
|
+
destination = Dir.pwd + "/Gemfile"
|
64
|
+
remove_file destination
|
65
|
+
copy_file path, destination
|
66
|
+
puts set_color "Gemfile setup complete.", :white, :bold
|
67
|
+
end
|
68
|
+
|
69
|
+
def run_bundle
|
70
|
+
system("bundle install")
|
71
|
+
puts set_color "Bundle install complete.", :white, :bold
|
72
|
+
end
|
73
|
+
|
74
|
+
def convert_haml
|
75
|
+
system("html2haml app/views/layouts/application.html.erb > app/views/layouts/application.html.haml")
|
76
|
+
system("rm app/views/layouts/application.html.erb")
|
77
|
+
puts set_color "Haml setup complete.", :white, :bold
|
78
|
+
end
|
79
|
+
|
80
|
+
# First Route and Home
|
81
|
+
|
82
|
+
def setup_home
|
83
|
+
add_home_controller
|
84
|
+
add_first_route
|
85
|
+
add_home_index_view
|
86
|
+
|
87
|
+
end
|
88
|
+
|
89
|
+
def add_home_controller
|
90
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/home_controller.rb"
|
91
|
+
source_paths << path
|
92
|
+
destination = Dir.pwd + "/app/controllers/home_controller.rb"
|
93
|
+
remove_file destination
|
94
|
+
copy_file path, destination
|
95
|
+
puts set_color "Home controller setup complete.", :white, :bold
|
96
|
+
end
|
97
|
+
|
98
|
+
def add_first_route
|
99
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/routes.rb"
|
100
|
+
source_paths << path
|
101
|
+
destination = Dir.pwd + "/config/routes.rb"
|
102
|
+
remove_file destination
|
103
|
+
copy_file path, destination
|
104
|
+
puts set_color "First Route setup complete.", :white, :bold
|
105
|
+
end
|
106
|
+
|
107
|
+
def add_home_index_view
|
108
|
+
system("bundle exec guard init")
|
109
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/index.html.haml"
|
110
|
+
source_paths << path
|
111
|
+
destination = Dir.pwd + "/app/views/home/index.html.haml"
|
112
|
+
remove_file destination
|
113
|
+
copy_file path, destination
|
114
|
+
puts set_color "Home/Index View setup complete.", :white, :bold
|
115
|
+
end
|
116
|
+
|
117
|
+
# Installs
|
118
|
+
|
119
|
+
def init_guard
|
120
|
+
system("bundle exec guard init")
|
121
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/Guardfile"
|
122
|
+
source_paths << path
|
123
|
+
destination = Dir.pwd + "/Guardfile"
|
124
|
+
remove_file destination
|
125
|
+
copy_file path, destination
|
126
|
+
puts set_color "Guardfile setup complete.", :white, :bold
|
127
|
+
end
|
128
|
+
|
129
|
+
def install_simpleform
|
130
|
+
system("rails g simple_form:install")
|
131
|
+
puts set_color "Simple Form setup complete.", :white, :bold
|
132
|
+
end
|
133
|
+
|
134
|
+
def install_rspec
|
135
|
+
system("rails g rspec:install")
|
136
|
+
puts set_color "Rspec setup complete.", :white, :bold
|
137
|
+
end
|
138
|
+
|
139
|
+
def install_cucumber
|
140
|
+
system("rails g cucumber:install")
|
141
|
+
puts set_color "Cucumber setup complete.", :white, :bold
|
142
|
+
end
|
143
|
+
|
144
|
+
def add_livereload
|
145
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/development.rb"
|
146
|
+
source_paths << path
|
147
|
+
destination = Dir.pwd + "/config/environments/development.rb"
|
148
|
+
remove_file destination
|
149
|
+
copy_file path, destination
|
150
|
+
puts set_color "LiveReload setup complete.", :white, :bold
|
151
|
+
end
|
152
|
+
|
153
|
+
# Bower
|
154
|
+
|
155
|
+
def install_bower
|
156
|
+
add_bower_rb
|
157
|
+
add_gitignore
|
158
|
+
add_bower_rc
|
159
|
+
puts set_color "Bower setup complete.", :white, :bold
|
160
|
+
end
|
161
|
+
|
162
|
+
def add_bower_rb
|
163
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/bower.rb"
|
164
|
+
source_paths << path
|
165
|
+
destination = Dir.pwd + "/config/initializers/bower.rb"
|
166
|
+
remove_file destination
|
167
|
+
copy_file path, destination
|
168
|
+
puts set_color "Added Bower Initializer.", :green, :bold
|
169
|
+
end
|
170
|
+
|
171
|
+
def add_gitignore
|
172
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/.gitignore"
|
173
|
+
source_paths << path
|
174
|
+
destination = Dir.pwd + "/.gitignore"
|
175
|
+
remove_file destination
|
176
|
+
copy_file path, destination
|
177
|
+
puts set_color "Added Bower to the .gitignore file.", :green, :bold
|
178
|
+
end
|
179
|
+
|
180
|
+
def add_bower_rc
|
181
|
+
path = File.expand_path(File.dirname(__FILE__)) + "/files/.bowerrc"
|
182
|
+
source_paths << path
|
183
|
+
destination = Dir.pwd + "/.bowerrc"
|
184
|
+
remove_file destination
|
185
|
+
copy_file path, destination
|
186
|
+
puts set_color "Added Bowerrc.", :green, :bold
|
187
|
+
end
|
188
|
+
|
189
|
+
def finished_message
|
190
|
+
puts '- - - - - - - - - -'
|
191
|
+
puts set_color 'Your Eos Conversion Is Complete!', :white, :bold
|
192
|
+
puts '- - - - - - - - - -'
|
193
|
+
puts set_color 'Here\'s what\'s changed in your project:', :white, :bold
|
194
|
+
puts set_color '- New Gemfile added.', :cyan, :bold
|
195
|
+
puts set_color '- Views converted to HAML', :cyan, :bold
|
196
|
+
puts set_color '- Home Controller added.', :cyan, :bold
|
197
|
+
puts set_color '- First Route added.', :cyan, :bold
|
198
|
+
puts set_color '- Guardfile added.', :cyan, :bold
|
199
|
+
puts set_color '- Simple Form installed.', :cyan, :bold
|
200
|
+
puts set_color '- Rspec installed.', :cyan, :bold
|
201
|
+
puts set_color '- Cucumber installed.', :cyan, :bold
|
202
|
+
puts set_color '- LiveReload added.', :cyan, :bold
|
203
|
+
puts set_color '- Bower installed.', :cyan, :bold
|
204
|
+
puts '- - - - - - - - - -'
|
205
|
+
puts set_color 'Other Notes:', :white, :bold
|
206
|
+
puts set_color '- Devise has been included but not installed.', :cyan, :bold
|
207
|
+
puts set_color '- Bower assets are installed into vendor/assets/components.', :cyan, :bold
|
208
|
+
puts set_color '- Bower components have been added to gitignore - you may want to change this for production.', :cyan, :bold
|
209
|
+
puts set_color '- Check out https://coderwall.com/p/6bmygq or https://gist.github.com/afeld/5704079 for getting bower into production.', :cyan, :bold
|
210
|
+
puts set_color '- You can start the server with \'bundle exec guard\' and find your app at localhost:5878', :cyan, :bold
|
211
|
+
|
212
|
+
puts '- - - - - - - - - -'
|
213
|
+
end
|
214
|
+
|
215
|
+
end
|
216
|
+
|
217
|
+
Eos.start(ARGV)
|
data/bin/files/.bowerrc
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
|
2
|
+
#
|
3
|
+
# If you find yourself ignoring temporary files generated by your text editor
|
4
|
+
# or operating system, you probably want to add a global ignore instead:
|
5
|
+
# git config --global core.excludesfile '~/.gitignore_global'
|
6
|
+
|
7
|
+
# Ignore bundler config.
|
8
|
+
/.bundle
|
9
|
+
|
10
|
+
# Ignore the default SQLite database.
|
11
|
+
/db/*.sqlite3
|
12
|
+
/db/*.sqlite3-journal
|
13
|
+
|
14
|
+
# Ignore all logfiles and tempfiles.
|
15
|
+
/log/*.log
|
16
|
+
/tmp
|
17
|
+
|
18
|
+
# Ignore bower originals
|
19
|
+
/vendor/assets/components
|
data/bin/files/Gemfile
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
ruby '2.1.0'
|
3
|
+
gem 'rails', '4.1.0.beta1'
|
4
|
+
gem 'sass-rails', '~> 4.0.0'
|
5
|
+
gem 'uglifier', '>= 1.3.0'
|
6
|
+
gem 'coffee-rails', '~> 4.0.0'
|
7
|
+
gem 'jquery-rails'
|
8
|
+
gem 'turbolinks'
|
9
|
+
gem 'jbuilder', '~> 1.2'
|
10
|
+
gem 'devise'
|
11
|
+
gem 'haml-rails'
|
12
|
+
gem 'puma'
|
13
|
+
gem 'simple_form'
|
14
|
+
gem 'rails_12factor'
|
15
|
+
gem 'spring', group: :development
|
16
|
+
gem "mini_magick"
|
17
|
+
gem "paperclip", :git => "git://github.com/thoughtbot/paperclip.git"
|
18
|
+
gem 'jquery-ui-rails'
|
19
|
+
gem 'jquery-modal-rails'
|
20
|
+
gem 'aws-sdk'
|
21
|
+
gem 'jquery-validation-rails'
|
22
|
+
|
23
|
+
group :production do
|
24
|
+
gem 'pg'
|
25
|
+
end
|
26
|
+
group :development do
|
27
|
+
gem 'better_errors'
|
28
|
+
gem 'binding_of_caller', :platforms=>[:mri_19, :mri_20, :rbx]
|
29
|
+
gem 'guard-bundler'
|
30
|
+
gem 'guard-cucumber'
|
31
|
+
gem 'guard-puma'
|
32
|
+
gem 'guard-rails'
|
33
|
+
gem 'guard-rspec'
|
34
|
+
gem 'guard-livereload'
|
35
|
+
gem "rack-livereload"
|
36
|
+
gem "letter_opener"
|
37
|
+
gem 'html2haml'
|
38
|
+
gem 'meta_request'
|
39
|
+
gem 'quiet_assets'
|
40
|
+
gem 'rails_layout'
|
41
|
+
gem 'rb-fchange', :require=>false
|
42
|
+
gem 'rb-fsevent', :require=>false
|
43
|
+
gem 'rb-inotify', :require=>false
|
44
|
+
end
|
45
|
+
group :development, :test do
|
46
|
+
gem 'factory_girl_rails'
|
47
|
+
gem 'rspec-rails'
|
48
|
+
gem 'sqlite3'
|
49
|
+
end
|
50
|
+
group :test do
|
51
|
+
gem 'capybara'
|
52
|
+
gem 'cucumber-rails', :require=>false
|
53
|
+
gem 'database_cleaner', '1.0.1'
|
54
|
+
gem 'email_spec'
|
55
|
+
gem 'launchy'
|
56
|
+
end
|
data/bin/files/Guardfile
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
guard :bundler do
|
2
|
+
watch('Gemfile')
|
3
|
+
# Uncomment next line if your Gemfile contains the `gemspec' command.
|
4
|
+
# watch(/^.+\.gemspec/)
|
5
|
+
end
|
6
|
+
|
7
|
+
guard 'cucumber' do
|
8
|
+
watch(%r{^features/.+\.feature$})
|
9
|
+
watch(%r{^features/support/.+$}) { 'features' }
|
10
|
+
watch(%r{^features/step_definitions/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'features' }
|
11
|
+
end
|
12
|
+
|
13
|
+
guard 'livereload' do
|
14
|
+
watch(%r{app/views/.+\.(erb|haml|slim)$})
|
15
|
+
watch(%r{app/helpers/.+\.rb})
|
16
|
+
watch(%r{public/.+\.(css|js|html)})
|
17
|
+
watch(%r{config/locales/.+\.yml})
|
18
|
+
# Rails Assets Pipeline
|
19
|
+
watch(%r{(app|vendor)(/assets/\w+/(.+\.(css|js|html|png|jpg))).*}) { |m| "/assets/#{m[3]}" }
|
20
|
+
end
|
21
|
+
|
22
|
+
guard 'puma', :port => 5878 do
|
23
|
+
watch('Gemfile.lock')
|
24
|
+
watch(%r{^config|lib/.*})
|
25
|
+
end
|
26
|
+
|
27
|
+
guard :rspec do
|
28
|
+
watch(%r{^spec/.+_spec\.rb$})
|
29
|
+
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
|
30
|
+
watch('spec/spec_helper.rb') { "spec" }
|
31
|
+
|
32
|
+
# Rails example
|
33
|
+
watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
34
|
+
watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
|
35
|
+
watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
|
36
|
+
watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
|
37
|
+
watch('config/routes.rb') { "spec/routing" }
|
38
|
+
watch('app/controllers/application_controller.rb') { "spec/controllers" }
|
39
|
+
|
40
|
+
# Capybara features specs
|
41
|
+
watch(%r{^app/views/(.+)/.*\.(erb|haml|slim)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
|
42
|
+
|
43
|
+
# Turnip features and steps
|
44
|
+
watch(%r{^spec/acceptance/(.+)\.feature$})
|
45
|
+
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
|
46
|
+
end
|
47
|
+
|
data/bin/files/bower.rb
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
Rails.application.configure do
|
2
|
+
config.assets.paths << Rails.root.join('vendor', 'assets', 'components')
|
3
|
+
|
4
|
+
# via https://gist.github.com/afeld/5704079
|
5
|
+
|
6
|
+
# We don't want the default of everything that isn't js or css, because it pulls too many things in
|
7
|
+
config.assets.precompile.shift
|
8
|
+
|
9
|
+
# Explicitly register the extensions we are interested in compiling
|
10
|
+
config.assets.precompile.push(Proc.new do |path|
|
11
|
+
File.extname(path).in? [
|
12
|
+
'.png', '.gif', '.jpg', '.jpeg', '.svg', # Images
|
13
|
+
'.eot', '.otf', '.svc', '.woff', '.ttf', # Fonts
|
14
|
+
]
|
15
|
+
end)
|
16
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
Rails.application.configure do
|
2
|
+
# Settings specified here will take precedence over those in config/application.rb.
|
3
|
+
|
4
|
+
# In the development environment your application's code is reloaded on
|
5
|
+
# every request. This slows down response time but is perfect for development
|
6
|
+
# since you don't have to restart the web server when you make code changes.
|
7
|
+
config.cache_classes = false
|
8
|
+
|
9
|
+
# Do not eager load code on boot.
|
10
|
+
config.eager_load = false
|
11
|
+
|
12
|
+
# Show full error reports and disable caching.
|
13
|
+
config.consider_all_requests_local = true
|
14
|
+
config.action_controller.perform_caching = false
|
15
|
+
|
16
|
+
# Don't care if the mailer can't send.
|
17
|
+
config.action_mailer.raise_delivery_errors = false
|
18
|
+
|
19
|
+
# Print deprecation notices to the Rails logger.
|
20
|
+
config.active_support.deprecation = :log
|
21
|
+
|
22
|
+
# Raise an error on page load if there are pending migrations.
|
23
|
+
config.active_record.migration_error = :page_load
|
24
|
+
|
25
|
+
# LiveReload
|
26
|
+
config.middleware.use Rack::LiveReload
|
27
|
+
|
28
|
+
# Debug mode disables concatenation and preprocessing of assets.
|
29
|
+
# This option may cause significant delays in view rendering with a large
|
30
|
+
# number of complex assets.
|
31
|
+
config.assets.debug = true
|
32
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
= @text
|
data/bin/files/routes.rb
ADDED
data/lib/rails-eos.rb
ADDED
File without changes
|
data/rails-eos.gemspec
ADDED
@@ -0,0 +1,75 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
# stub: rails-eos 0.2.0 ruby lib
|
6
|
+
|
7
|
+
Gem::Specification.new do |s|
|
8
|
+
s.name = "rails-eos"
|
9
|
+
s.version = "0.2.0"
|
10
|
+
|
11
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
|
+
s.require_paths = ["lib"]
|
13
|
+
s.authors = ["CosmicLabs"]
|
14
|
+
s.date = "2014-04-12"
|
15
|
+
s.description = "Eos is a power-pack for your Rails apps. Speed through your project setup and enjoy agnostic styling, handy utilities and a good slathering of magic sauce."
|
16
|
+
s.email = "louis@cosmiclabs.com.au"
|
17
|
+
s.executables = ["eos"]
|
18
|
+
s.extra_rdoc_files = [
|
19
|
+
"LICENSE.txt",
|
20
|
+
"README.md"
|
21
|
+
]
|
22
|
+
s.files = [
|
23
|
+
".document",
|
24
|
+
"Gemfile",
|
25
|
+
"Gemfile.lock",
|
26
|
+
"LICENSE.txt",
|
27
|
+
"README.md",
|
28
|
+
"Rakefile",
|
29
|
+
"VERSION",
|
30
|
+
"bin/eos",
|
31
|
+
"bin/files/.bowerrc",
|
32
|
+
"bin/files/.buildpacks",
|
33
|
+
"bin/files/.gitignore",
|
34
|
+
"bin/files/Gemfile",
|
35
|
+
"bin/files/Guardfile",
|
36
|
+
"bin/files/bower.rb",
|
37
|
+
"bin/files/development.rb",
|
38
|
+
"bin/files/home_controller.rb",
|
39
|
+
"bin/files/index.html.haml",
|
40
|
+
"bin/files/routes.rb",
|
41
|
+
"lib/rails-eos.rb",
|
42
|
+
"rails-eos.gemspec",
|
43
|
+
"test/helper.rb",
|
44
|
+
"test/test_rails-eos.rb"
|
45
|
+
]
|
46
|
+
s.homepage = "http://github.com/louisrudner/rails-eos"
|
47
|
+
s.licenses = ["MIT"]
|
48
|
+
s.rubygems_version = "2.2.0"
|
49
|
+
s.summary = "An even more opinionated Rails setup."
|
50
|
+
|
51
|
+
if s.respond_to? :specification_version then
|
52
|
+
s.specification_version = 4
|
53
|
+
|
54
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
55
|
+
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
56
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
57
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0"])
|
58
|
+
s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
|
59
|
+
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
60
|
+
else
|
61
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
62
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
63
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
64
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
65
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
66
|
+
end
|
67
|
+
else
|
68
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
69
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
70
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
71
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
72
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
data/test/helper.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'simplecov'
|
2
|
+
|
3
|
+
module SimpleCov::Configuration
|
4
|
+
def clean_filters
|
5
|
+
@filters = []
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
SimpleCov.configure do
|
10
|
+
clean_filters
|
11
|
+
load_adapter 'test_frameworks'
|
12
|
+
end
|
13
|
+
|
14
|
+
ENV["COVERAGE"] && SimpleCov.start do
|
15
|
+
add_filter "/.rvm/"
|
16
|
+
end
|
17
|
+
require 'rubygems'
|
18
|
+
require 'bundler'
|
19
|
+
begin
|
20
|
+
Bundler.setup(:default, :development)
|
21
|
+
rescue Bundler::BundlerError => e
|
22
|
+
$stderr.puts e.message
|
23
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
24
|
+
exit e.status_code
|
25
|
+
end
|
26
|
+
require 'test/unit'
|
27
|
+
require 'shoulda'
|
28
|
+
|
29
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
30
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
31
|
+
require 'rails-eos'
|
32
|
+
|
33
|
+
class Test::Unit::TestCase
|
34
|
+
end
|
metadata
ADDED
@@ -0,0 +1,139 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rails-eos
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- CosmicLabs
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-04-12 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: shoulda
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rdoc
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '3.12'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '3.12'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: bundler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: jeweler
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 2.0.1
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 2.0.1
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: simplecov
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
description: Eos is a power-pack for your Rails apps. Speed through your project setup
|
84
|
+
and enjoy agnostic styling, handy utilities and a good slathering of magic sauce.
|
85
|
+
email: louis@cosmiclabs.com.au
|
86
|
+
executables:
|
87
|
+
- eos
|
88
|
+
extensions: []
|
89
|
+
extra_rdoc_files:
|
90
|
+
- LICENSE.txt
|
91
|
+
- README.md
|
92
|
+
files:
|
93
|
+
- ".document"
|
94
|
+
- Gemfile
|
95
|
+
- Gemfile.lock
|
96
|
+
- LICENSE.txt
|
97
|
+
- README.md
|
98
|
+
- Rakefile
|
99
|
+
- VERSION
|
100
|
+
- bin/eos
|
101
|
+
- bin/files/.bowerrc
|
102
|
+
- bin/files/.buildpacks
|
103
|
+
- bin/files/.gitignore
|
104
|
+
- bin/files/Gemfile
|
105
|
+
- bin/files/Guardfile
|
106
|
+
- bin/files/bower.rb
|
107
|
+
- bin/files/development.rb
|
108
|
+
- bin/files/home_controller.rb
|
109
|
+
- bin/files/index.html.haml
|
110
|
+
- bin/files/routes.rb
|
111
|
+
- lib/rails-eos.rb
|
112
|
+
- rails-eos.gemspec
|
113
|
+
- test/helper.rb
|
114
|
+
- test/test_rails-eos.rb
|
115
|
+
homepage: http://github.com/louisrudner/rails-eos
|
116
|
+
licenses:
|
117
|
+
- MIT
|
118
|
+
metadata: {}
|
119
|
+
post_install_message:
|
120
|
+
rdoc_options: []
|
121
|
+
require_paths:
|
122
|
+
- lib
|
123
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
124
|
+
requirements:
|
125
|
+
- - ">="
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: '0'
|
128
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
129
|
+
requirements:
|
130
|
+
- - ">="
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '0'
|
133
|
+
requirements: []
|
134
|
+
rubyforge_project:
|
135
|
+
rubygems_version: 2.2.0
|
136
|
+
signing_key:
|
137
|
+
specification_version: 4
|
138
|
+
summary: An even more opinionated Rails setup.
|
139
|
+
test_files: []
|