midwife 0.0.1 → 0.0.2

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/.gitignore CHANGED
@@ -1,3 +1,4 @@
1
1
  public/
2
2
  .sass-cache/
3
3
  pkg/
4
+ tmp/
data/Gemfile.lock CHANGED
@@ -1,9 +1,11 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- midwife (0.0.1)
4
+ midwife (0.0.2)
5
5
  haml (= 3.1.7)
6
6
  listen (= 0.5.3)
7
+ rack (= 1.4.1)
8
+ rack-contrib (= 1.1.0)
7
9
  rake (= 0.9.2.2)
8
10
  rb-fsevent (~> 0.9.1)
9
11
  sass (= 3.2.1)
@@ -13,6 +15,9 @@ GEM
13
15
  specs:
14
16
  haml (3.1.7)
15
17
  listen (0.5.3)
18
+ rack (1.4.1)
19
+ rack-contrib (1.1.0)
20
+ rack (>= 0.9.1)
16
21
  rake (0.9.2.2)
17
22
  rb-fsevent (0.9.2)
18
23
  sass (3.2.1)
data/README.md CHANGED
@@ -0,0 +1,25 @@
1
+ ## Midwife
2
+ A collection of preprocessors for frontend development.
3
+
4
+ ## Install
5
+
6
+ $ gem install midwife
7
+
8
+ ## Setup
9
+
10
+ In Rakefile:
11
+
12
+ ```ruby
13
+ require 'midwife'
14
+ ```
15
+
16
+ ## Usage
17
+
18
+ rake care # Care for your haml/scss
19
+ rake clean # Remove any temporary products.
20
+ rake clobber # Remove any generated file.
21
+ rake listen # Listen to your haml/scss
22
+
23
+ ---
24
+
25
+ Make an `assets` folder, and drop your haml and scss files in there. Running `rake care` will compile haml and scss files once and drop the artifacts into the `public` fodler. Run `rake listen` will compile each time you touch the files. I recommend `brew install mongoose` and run `mongoose` in the `public` folder to start a web server running on [localhost:8080](http://localhost:8080).
data/lib/midwife/tasks.rb CHANGED
@@ -12,7 +12,27 @@ module Midwife
12
12
 
13
13
  CLEAN.include HTML + CSS
14
14
 
15
+ CONFIG = <<FILE
16
+ require 'rack'
17
+ require 'rack/contrib/try_static'
18
+
19
+ use Rack::TryStatic, :root => "public",
20
+ :urls => %w[/],
21
+ :try => ['.html', 'index.html', '/index.html']
22
+
23
+ run lambda { |env| [404, {'Content-type' => 'text/plain'}, ['Not found']] }
24
+ FILE
25
+
15
26
  def self.build
27
+ desc 'Setup your environment'
28
+ task :setup do
29
+ FileUtils.mkdir_p(ASSETS) unless File.exists?(ASSETS)
30
+ FileUtils.mkdir_p(PUBLIC) unless File.exists?(PUBLIC)
31
+ File.open("config.ru", "w") do |file|
32
+ file.write(CONFIG)
33
+ end
34
+ end
35
+
16
36
  desc 'Care for your haml/scss'
17
37
  task :care => HTML + CSS
18
38
 
@@ -1,3 +1,3 @@
1
1
  module Midwife
2
- VERSION = '0.0.1'
2
+ VERSION = '0.0.2'
3
3
  end
data/midwife.gemspec CHANGED
@@ -1,4 +1,3 @@
1
- # -*- encoding: utf-8 -*-
2
1
  $:.push File.expand_path("../lib", __FILE__)
3
2
  require "midwife/version"
4
3
 
@@ -17,6 +16,8 @@ Gem::Specification.new do |s|
17
16
  s.add_dependency "rb-fsevent", "~> 0.9.1"
18
17
  s.add_dependency "haml", "3.1.7"
19
18
  s.add_dependency "sass", "3.2.1"
19
+ s.add_dependency "rack", "1.4.1"
20
+ s.add_dependency "rack-contrib", "1.1.0"
20
21
 
21
22
  s.files = `git ls-files`.split("\n")
22
23
  s.require_paths = ["lib"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: midwife
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,39 +13,29 @@ date: 2012-10-13 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
- requirement: !ruby/object:Gem::Requirement
16
+ requirement: &2161190480 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - '='
19
+ - - =
20
20
  - !ruby/object:Gem::Version
21
21
  version: 0.9.2.2
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - '='
28
- - !ruby/object:Gem::Version
29
- version: 0.9.2.2
24
+ version_requirements: *2161190480
30
25
  - !ruby/object:Gem::Dependency
31
26
  name: listen
32
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &2161189960 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
- - - '='
30
+ - - =
36
31
  - !ruby/object:Gem::Version
37
32
  version: 0.5.3
38
33
  type: :runtime
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - '='
44
- - !ruby/object:Gem::Version
45
- version: 0.5.3
35
+ version_requirements: *2161189960
46
36
  - !ruby/object:Gem::Dependency
47
37
  name: rb-fsevent
48
- requirement: !ruby/object:Gem::Requirement
38
+ requirement: &2161189420 !ruby/object:Gem::Requirement
49
39
  none: false
50
40
  requirements:
51
41
  - - ~>
@@ -53,44 +43,51 @@ dependencies:
53
43
  version: 0.9.1
54
44
  type: :runtime
55
45
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: 0.9.1
46
+ version_requirements: *2161189420
62
47
  - !ruby/object:Gem::Dependency
63
48
  name: haml
64
- requirement: !ruby/object:Gem::Requirement
49
+ requirement: &2161188940 !ruby/object:Gem::Requirement
65
50
  none: false
66
51
  requirements:
67
- - - '='
52
+ - - =
68
53
  - !ruby/object:Gem::Version
69
54
  version: 3.1.7
70
55
  type: :runtime
71
56
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
57
+ version_requirements: *2161188940
58
+ - !ruby/object:Gem::Dependency
59
+ name: sass
60
+ requirement: &2161188460 !ruby/object:Gem::Requirement
73
61
  none: false
74
62
  requirements:
75
- - - '='
63
+ - - =
76
64
  - !ruby/object:Gem::Version
77
- version: 3.1.7
65
+ version: 3.2.1
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: *2161188460
78
69
  - !ruby/object:Gem::Dependency
79
- name: sass
80
- requirement: !ruby/object:Gem::Requirement
70
+ name: rack
71
+ requirement: &2161187980 !ruby/object:Gem::Requirement
81
72
  none: false
82
73
  requirements:
83
- - - '='
74
+ - - =
84
75
  - !ruby/object:Gem::Version
85
- version: 3.2.1
76
+ version: 1.4.1
86
77
  type: :runtime
87
78
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
79
+ version_requirements: *2161187980
80
+ - !ruby/object:Gem::Dependency
81
+ name: rack-contrib
82
+ requirement: &2161187500 !ruby/object:Gem::Requirement
89
83
  none: false
90
84
  requirements:
91
- - - '='
85
+ - - =
92
86
  - !ruby/object:Gem::Version
93
- version: 3.2.1
87
+ version: 1.1.0
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: *2161187500
94
91
  description: ''
95
92
  email:
96
93
  - lihsuan@8thlight.com
@@ -106,7 +103,6 @@ files:
106
103
  - lib/midwife.rb
107
104
  - lib/midwife/tasks.rb
108
105
  - lib/midwife/version.rb
109
- - lib/tasks/care.rake
110
106
  - midwife.gemspec
111
107
  homepage: http://github.com/naush/midwife
112
108
  licenses: []
@@ -122,7 +118,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
122
118
  version: '0'
123
119
  segments:
124
120
  - 0
125
- hash: -1056226323928541165
121
+ hash: 3301392848472631424
126
122
  required_rubygems_version: !ruby/object:Gem::Requirement
127
123
  none: false
128
124
  requirements:
@@ -131,10 +127,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
131
127
  version: '0'
132
128
  segments:
133
129
  - 0
134
- hash: -1056226323928541165
130
+ hash: 3301392848472631424
135
131
  requirements: []
136
132
  rubyforge_project:
137
- rubygems_version: 1.8.24
133
+ rubygems_version: 1.8.4
138
134
  signing_key:
139
135
  specification_version: 3
140
136
  summary: A collection of preprocessors for frontend development
data/lib/tasks/care.rake DELETED
@@ -1,51 +0,0 @@
1
- include Rake::DSL
2
- require 'rake/clean'
3
- require 'listen'
4
-
5
- HAML = FileList['**/*.haml']
6
- HTML = HAML.ext('html')
7
- SCSS = FileList['**/*.scss']
8
- CSS = SCSS.ext('css')
9
-
10
- ASSETS = 'assets'
11
- PUBLIC = 'public'
12
-
13
- CLEAN.include HTML + CSS
14
-
15
- desc 'Care for your haml/scss'
16
- task :care => HTML + CSS
17
- task :default => :care
18
-
19
- desc 'Listen to your haml/scss'
20
- task :listen do |t|
21
- Listen.to(ASSETS) do |modified, added, removed|
22
- (modified + added).each do |source|
23
- extension = File.extname(source)
24
- if extension == '.haml'
25
- target = source.ext('html')
26
- compile('haml', source, target)
27
- elsif extension == '.scss'
28
- target = source.ext('css')
29
- compile('sass', source, target)
30
- end
31
- end
32
- removed.each do |source|
33
- destination = source.gsub(ASSETS, PUBLIC).ext('html')
34
- File.delete(destination)
35
- end
36
- end
37
- end
38
-
39
- rule '.html' => '.haml' do |t|
40
- compile("haml", t.source, t.name)
41
- end
42
-
43
- rule '.css' => '.scss' do |t|
44
- compile("sass", t.source, t.name)
45
- end
46
-
47
- def compile(command, source, target)
48
- destination = target.gsub(ASSETS, PUBLIC)
49
- FileUtils.mkdir_p(File.dirname(destination))
50
- sh "#{command} #{source} #{destination}"
51
- end