myway 0.1.6 → 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.
- data/.rspec +2 -0
- data/README.md +6 -0
- data/lib/myway.rb +21 -13
- data/lib/myway/templates/app/app.tt +10 -4
- data/lib/myway/templates/app/views/includes/navbar.haml.tt +1 -1
- data/lib/myway/templates/app/views/index.haml.tt +8 -0
- data/lib/myway/templates/app/views/layout.haml.tt +16 -15
- data/lib/myway/templates/backbone/collection.js.tt +0 -0
- data/lib/myway/templates/backbone/model.js.tt +0 -0
- data/lib/myway/templates/backbone/route.js.tt +0 -0
- data/lib/myway/templates/backbone/view.js.tt +0 -0
- data/lib/myway/templates/config.ru.tt +1 -0
- data/lib/myway/version.rb +1 -1
- data/spec/spec_helper.rb +20 -0
- metadata +10 -3
data/.rspec
ADDED
data/README.md
CHANGED
@@ -28,6 +28,12 @@ And to start a new sinatra project:
|
|
28
28
|
|
29
29
|
CHANGE LOG
|
30
30
|
|
31
|
+
Version 0.2.0
|
32
|
+
- replace head.js with yepnope.js for javascript loader
|
33
|
+
- dynamically append path for sprockets for assets
|
34
|
+
- adding path for images noted by grandslam
|
35
|
+
- refactoring
|
36
|
+
|
31
37
|
Version 0.1.3
|
32
38
|
- adds head, backbone, underscore js in assets pipeline
|
33
39
|
- scaffolds capistrano deploy script
|
data/lib/myway.rb
CHANGED
@@ -11,7 +11,7 @@ JS_LIBS = {
|
|
11
11
|
'underscore' => 'http://documentcloud.github.com/underscore/underscore-min.js',
|
12
12
|
'bootstrap' => 'http://twitter.github.com/bootstrap/assets/bootstrap.zip',
|
13
13
|
'kickstart' => 'http://www.99lime.com/downloads/',
|
14
|
-
'yepnope' => 'https://github.com/SlexAxton/yepnope.js/
|
14
|
+
'yepnope' => 'https://github.com/SlexAxton/yepnope.js/archive/master.zip'
|
15
15
|
}
|
16
16
|
class String
|
17
17
|
def camelize(first_letter_in_uppercase = true)
|
@@ -96,24 +96,34 @@ module Myway
|
|
96
96
|
}
|
97
97
|
end
|
98
98
|
|
99
|
-
def build_js_libs(libs=%w(
|
99
|
+
def build_js_libs(libs=%w(yepnope underscore backbone bootstrap))
|
100
100
|
|
101
101
|
libs.each do |lib|
|
102
102
|
begin
|
103
|
-
if lib
|
104
|
-
File.open "
|
103
|
+
if lib == "bootstrap" or lib == "yepnope"
|
104
|
+
File.open "assets/#{lib}.zip", 'wb' do |file|
|
105
105
|
file.write get_latest(lib)
|
106
106
|
end
|
107
|
+
unzip_file "./assets/#{lib}.zip", "./assets/"
|
108
|
+
File.delete "./assets/#{lib}.zip"
|
109
|
+
end
|
110
|
+
|
111
|
+
case lib
|
112
|
+
when "yepnope"
|
113
|
+
`mv ./assets/#{lib}.js-master/#{lib}.js ./assets/js/`
|
114
|
+
`mv ./assets/#{lib}.js-master/filters ./assets/js/`
|
115
|
+
`mv ./assets/#{lib}.js-master/plugins ./assets/js/`
|
116
|
+
`mv ./assets/#{lib}.js-master/prefixes ./assets/js/`
|
117
|
+
FileUtils.rm_rf "./assets/#{lib}.js-master/" if lib == "yepnope"
|
118
|
+
when "bootstrap"
|
119
|
+
`mv ./assets/#{lib}/js/* ./assets/js/`
|
120
|
+
`mv ./assets/#{lib}/css ./assets/`
|
121
|
+
`mv ./assets/#{lib}/img ./assets/`
|
122
|
+
FileUtils.rm_rf "./assets/#{lib}/" if lib == "bootstrap"
|
107
123
|
else
|
108
|
-
File.open "assets/js/#{lib}.
|
124
|
+
File.open "./assets/js/#{lib}.min.js", 'w+' do |file|
|
109
125
|
file.write get_latest(lib)
|
110
126
|
end
|
111
|
-
unzip_file "./assets/js/#{lib}.zip", "./assets/"
|
112
|
-
File.delete "./assets/js/#{lib}.zip"
|
113
|
-
`mv ./assets/bootstrap/js/* ./assets/js/`
|
114
|
-
`mv ./assets/bootstrap/css/ ./assets/`
|
115
|
-
`mv ./assets/bootstrap/img/ ./assets/`
|
116
|
-
FileUtils.rm_rf "./assets/bootstrap/"
|
117
127
|
end
|
118
128
|
rescue Errno::ETIMEDOUT, Timeout::Error, Errno::EINVAL, Errno::ECONNRESET, EOFError, Net::HTTPBadResponse, Net::HTTPHeaderSyntaxError, Net::ProtocolError => e
|
119
129
|
say "#{e} Error while getting #{lib}.js"
|
@@ -152,8 +162,6 @@ module Myway
|
|
152
162
|
|
153
163
|
template "myway/templates/spec/specHelper.js.tt", "#{name}/spec/javascripts/helpers/specHelper.js"
|
154
164
|
template "myway/templates/spec/fixtures.js.tt", "#{name}/spec/javascripts/fixtures/fixtures.js"
|
155
|
-
|
156
|
-
|
157
165
|
end
|
158
166
|
end
|
159
167
|
end
|
@@ -1,14 +1,15 @@
|
|
1
|
-
require "sinatra/reloader"
|
1
|
+
#require "sinatra/reloader"
|
2
2
|
require "yaml"
|
3
3
|
require "sprockets"
|
4
4
|
require "haml"
|
5
|
+
require "pathname"
|
5
6
|
|
6
7
|
class <%= name.camelize %> < Sinatra::Base
|
7
8
|
|
8
9
|
set :app_path, '/'
|
9
10
|
|
10
11
|
configure :development do
|
11
|
-
register Sinatra::Reloader
|
12
|
+
#register Sinatra::Reloader
|
12
13
|
end
|
13
14
|
|
14
15
|
set :logging, true
|
@@ -16,8 +17,7 @@ class <%= name.camelize %> < Sinatra::Base
|
|
16
17
|
set :assets, Sprockets::Environment.new
|
17
18
|
|
18
19
|
# Configure sprockets
|
19
|
-
settings.assets.append_path "
|
20
|
-
settings.assets.append_path "assets/css"
|
20
|
+
Dir.glob('assets/**/*/').select { |d| settings.assets.append_path "#{d}" if File.directory? d }
|
21
21
|
|
22
22
|
# For compressed JS and CSS output
|
23
23
|
require "yui/compressor"
|
@@ -28,6 +28,12 @@ class <%= name.camelize %> < Sinatra::Base
|
|
28
28
|
haml :index
|
29
29
|
end
|
30
30
|
|
31
|
+
get "/img/:file" do
|
32
|
+
file = params[:file].split(".")
|
33
|
+
content_type "image/#{file[1]}"
|
34
|
+
settings.assets["#{file[0]}.#{file[1]}"]
|
35
|
+
end
|
36
|
+
|
31
37
|
get "/js/:file.js" do
|
32
38
|
content_type "application/javascript"
|
33
39
|
settings.assets["#{params[:file]}.js"]
|
@@ -1,36 +1,37 @@
|
|
1
1
|
!!!
|
2
2
|
%html
|
3
3
|
%head
|
4
|
-
%title Project: <%= name %>
|
5
|
-
%meta
|
6
|
-
%meta
|
7
|
-
%meta
|
8
|
-
%script{:src=> "/js/
|
9
|
-
%link
|
4
|
+
%title Project: <%= name.camelize %>
|
5
|
+
%meta{:name=>'viewport', :content=>'width=device-width, initial-scale=1.0'}
|
6
|
+
%meta{:name=>'description', :content=>''}
|
7
|
+
%meta{:name=>'author', :content=>''}
|
8
|
+
%script{:src=> "/js/yepnope.js"}
|
9
|
+
%link{:href=>'/css/bootstrap.css', :rel=>'stylesheet'}
|
10
10
|
%style
|
11
11
|
body {padding-top: 60px;} /* 60px to make the container go all the way to the bottom of the topbar */
|
12
|
-
%link
|
12
|
+
%link{:href=>'/css/bootstrap-responsive.css', :rel=>'stylesheet'}
|
13
13
|
|
14
14
|
//Le HTML5 shim, for IE6-8 support of HTML5 elements
|
15
15
|
//if lt IE 9
|
16
|
-
%script
|
16
|
+
%script{:src=>'http://html5shim.googlecode.com/svn/trunk/html5.js'}
|
17
17
|
//Le fav and touch icons
|
18
|
-
%link
|
19
|
-
%link
|
20
|
-
%link
|
21
|
-
%link
|
18
|
+
%link{:rel=>'shortcut icon', :href=>'/assets/ico/favicon.ico'}
|
19
|
+
%link{:rel=>'apple-touch-icon-precomposed', :sizes=>'114x114', :href=>'/assets/ico/apple-touch-icon-114-precomposed.png'}
|
20
|
+
%link{:rel=>'apple-touch-icon-precomposed', :sizes=>'72x72', :href=>'/assets/ico/apple-touch-icon-72-precomposed.png'}
|
21
|
+
%link{:rel=>'apple-touch-icon-precomposed', :href=>'/assets/ico/apple-touch-icon-57-precomposed.png'}
|
22
22
|
|
23
23
|
%body
|
24
24
|
= haml :'includes/navbar'
|
25
25
|
.container
|
26
26
|
=yield
|
27
27
|
%script
|
28
|
-
|
28
|
+
yepnope({
|
29
|
+
load:[
|
29
30
|
"/js/underscore.min.js", "/js/backbone.min.js",
|
30
31
|
"/js/bootstrap-alert.js", "/js/bootstrap-dropdown.js",
|
31
32
|
"/js/bootstrap-modal.js","/js/bootstrap-tooltip.js"
|
32
33
|
//"/js/bootstrap-button.js","/js/bootstrap-collapse.js","/js/bootstrap-carousel.js",
|
33
34
|
//"/js/bootstrap-popover.js","/js/bootstrap-scrollspy.js","/js/bootstrap-tab.js",
|
34
|
-
//"/js/bootstrap-transition.js","/js/bootstrap-typeahead.js"
|
35
|
-
)
|
35
|
+
//"/js/bootstrap-transition.js","/js/bootstrap-typeahead.js"]
|
36
|
+
})
|
36
37
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/myway/version.rb
CHANGED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
2
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
3
|
+
# Require this file using `require "spec_helper"` to ensure that it is only
|
4
|
+
# loaded once.
|
5
|
+
#
|
6
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
7
|
+
require "rspec"
|
8
|
+
require "../lib/myway"
|
9
|
+
|
10
|
+
RSpec.configure do |config|
|
11
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
12
|
+
config.run_all_when_everything_filtered = true
|
13
|
+
config.filter_run :focus
|
14
|
+
|
15
|
+
# Run specs in random order to surface order dependencies. If you find an
|
16
|
+
# order dependency and want to debug it, you can fix the order by providing
|
17
|
+
# the seed, which is printed after each run.
|
18
|
+
# --seed 1234
|
19
|
+
config.order = 'random'
|
20
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: myway
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-11-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
@@ -53,6 +53,7 @@ extensions: []
|
|
53
53
|
extra_rdoc_files: []
|
54
54
|
files:
|
55
55
|
- .gitignore
|
56
|
+
- .rspec
|
56
57
|
- Gemfile
|
57
58
|
- LICENSE
|
58
59
|
- README.md
|
@@ -64,6 +65,10 @@ files:
|
|
64
65
|
- lib/myway/templates/app/views/includes/navbar.haml.tt
|
65
66
|
- lib/myway/templates/app/views/index.haml.tt
|
66
67
|
- lib/myway/templates/app/views/layout.haml.tt
|
68
|
+
- lib/myway/templates/backbone/collection.js.tt
|
69
|
+
- lib/myway/templates/backbone/model.js.tt
|
70
|
+
- lib/myway/templates/backbone/route.js.tt
|
71
|
+
- lib/myway/templates/backbone/view.js.tt
|
67
72
|
- lib/myway/templates/config.ru.tt
|
68
73
|
- lib/myway/templates/config/deploy.rb.tt
|
69
74
|
- lib/myway/templates/config/unicorn.tt
|
@@ -79,6 +84,7 @@ files:
|
|
79
84
|
- lib/myway/templates/spec/spec_helper.rb.tt
|
80
85
|
- lib/myway/version.rb
|
81
86
|
- myway.gemspec
|
87
|
+
- spec/spec_helper.rb
|
82
88
|
homepage: http://github.com/mftaher/myway
|
83
89
|
licenses: []
|
84
90
|
post_install_message:
|
@@ -103,5 +109,6 @@ rubygems_version: 1.8.23
|
|
103
109
|
signing_key:
|
104
110
|
specification_version: 3
|
105
111
|
summary: Scaffolding application for Sinatra web applications
|
106
|
-
test_files:
|
112
|
+
test_files:
|
113
|
+
- spec/spec_helper.rb
|
107
114
|
has_rdoc:
|