easy_html_generator 1.0.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.
Files changed (69) hide show
  1. checksums.yaml +7 -0
  2. data/CONTRIBUTING.md +44 -0
  3. data/LICENSE +22 -0
  4. data/README.md +332 -0
  5. data/bin/ehg +52 -0
  6. data/lib/easy_html_generator.rb +100 -0
  7. data/lib/easy_html_generator/checksum.rb +39 -0
  8. data/lib/easy_html_generator/config.rb +147 -0
  9. data/lib/easy_html_generator/generator.rb +25 -0
  10. data/lib/easy_html_generator/generator/base.rb +83 -0
  11. data/lib/easy_html_generator/generator/combine.rb +28 -0
  12. data/lib/easy_html_generator/generator/compile/coffee.rb +30 -0
  13. data/lib/easy_html_generator/generator/compile/haml.rb +70 -0
  14. data/lib/easy_html_generator/generator/compile/haml/context.rb +52 -0
  15. data/lib/easy_html_generator/generator/compile/haml/helper/activesupport_override.rb +48 -0
  16. data/lib/easy_html_generator/generator/compile/haml/helper/asset_helper.rb +78 -0
  17. data/lib/easy_html_generator/generator/compile/haml/layout.rb +35 -0
  18. data/lib/easy_html_generator/generator/compile/sass.rb +47 -0
  19. data/lib/easy_html_generator/generator/copy.rb +44 -0
  20. data/lib/easy_html_generator/generator/delete.rb +20 -0
  21. data/lib/easy_html_generator/generator/minimize/css.rb +28 -0
  22. data/lib/easy_html_generator/generator/minimize/html.rb +32 -0
  23. data/lib/easy_html_generator/generator/minimize/images.rb +33 -0
  24. data/lib/easy_html_generator/generator/minimize/js.rb +28 -0
  25. data/lib/easy_html_generator/generator/service/analytics.rb +34 -0
  26. data/lib/easy_html_generator/generator/service/bower.rb +34 -0
  27. data/lib/easy_html_generator/generator/service/grunt.rb +24 -0
  28. data/lib/easy_html_generator/generator/structure.rb +20 -0
  29. data/lib/easy_html_generator/generators.rb +53 -0
  30. data/lib/easy_html_generator/project.rb +77 -0
  31. data/lib/easy_html_generator/rackapp.rb +67 -0
  32. data/lib/easy_html_generator/workspace.rb +59 -0
  33. data/src/demo/assets/images/demo.png +0 -0
  34. data/src/demo/assets/public/robots.txt +0 -0
  35. data/src/demo/assets/scripts/demo.js.coffee +1 -0
  36. data/src/demo/assets/scripts/plain.js +0 -0
  37. data/src/demo/assets/styles/app.css.sass +2 -0
  38. data/src/demo/assets/styles/plain.css +0 -0
  39. data/src/demo/lib/generators/project_generator.rb +12 -0
  40. data/src/demo/lib/helper/projecthelper.rb +5 -0
  41. data/src/demo/views/index.html.haml +1 -0
  42. data/src/demo/views/index/_lore_ipsum.haml +1 -0
  43. data/src/demo/views/layout.haml +8 -0
  44. data/src/demo/views/plain.html +0 -0
  45. data/src/shared/assets/images/shared.png +0 -0
  46. data/src/shared/assets/scripts/shared.js.coffee +1 -0
  47. data/src/shared/assets/scripts/shared.plain.js +0 -0
  48. data/src/shared/assets/styles/mixins/_arrows.sass +32 -0
  49. data/src/shared/assets/styles/mixins/_bootstrap-fixes.sass +12 -0
  50. data/src/shared/assets/styles/mixins/_buttons.sass +32 -0
  51. data/src/shared/assets/styles/mixins/_css3.sass +266 -0
  52. data/src/shared/assets/styles/mixins/_headjs-bootstrap-mediaqueries.sass +42 -0
  53. data/src/shared/assets/styles/mixins/_helper.sass +70 -0
  54. data/src/shared/assets/styles/mixins/_normalize.sass +340 -0
  55. data/src/shared/assets/styles/mixins/_reset.sass +46 -0
  56. data/src/shared/lib/generators/shared_generator.rb +12 -0
  57. data/src/shared/lib/helper/shared_helper.rb +16 -0
  58. data/src/shared/project.yml +127 -0
  59. data/src/shared/views/404.yml +5 -0
  60. data/src/template/assets/public/robots.txt +0 -0
  61. data/src/template/assets/scripts/index.js.coffee +1 -0
  62. data/src/template/assets/styles/index.css.sass +2 -0
  63. data/src/template/lib/generators/project_generator.rb +12 -0
  64. data/src/template/lib/helper/project_helper.rb +5 -0
  65. data/src/template/project.yml +128 -0
  66. data/src/template/views/index.html.haml +4 -0
  67. data/src/template/views/index/_lore_ipsum.haml +2 -0
  68. data/src/template/views/layout.haml +9 -0
  69. metadata +402 -0
@@ -0,0 +1,70 @@
1
+ @mixin inline-block
2
+ display: inline-block
3
+ zoom: 1
4
+ *display: inline
5
+
6
+ @mixin center-block
7
+ display: block
8
+ margin-left: auto
9
+ margin-right: auto
10
+
11
+ @mixin abs-pos ($top: auto, $right: auto, $bottom: auto, $left: auto)
12
+ top: $top
13
+ right: $right
14
+ bottom: $bottom
15
+ left: $left
16
+ position: absolute
17
+
18
+ @mixin clearfix
19
+ &:after
20
+ clear: both
21
+ content: ''
22
+ display: block
23
+ height: 0
24
+ line-height: 0
25
+ visibility: hidden
26
+ html[xmlns] &
27
+ display: block
28
+ * html &
29
+ height: 1%
30
+
31
+ @mixin hidden-text
32
+ white-space: nowrap
33
+ overflow: hidden
34
+ text-indent: 500%
35
+
36
+ @mixin placeholder
37
+ &::-moz-placeholder
38
+ @content
39
+ &:-moz-placeholder
40
+ @content
41
+ &::-webkit-input-placeholder
42
+ @content
43
+ &:-ms-input-placeholder
44
+ @content
45
+
46
+ @mixin force-hidden
47
+ display: none !important
48
+ visibility: hidden !important
49
+ position: absolute !important
50
+ z-index: -1000 !important
51
+
52
+ @mixin text-input-types
53
+ &[type=text], &[type=tel], &[type=number], &[type=email]
54
+ @content
55
+
56
+ @mixin headlines
57
+ h1, h2, h3, h4, h5, h6
58
+ @content
59
+
60
+ @mixin bold
61
+ font-weight: bold
62
+
63
+ @mixin zoom-on-hover
64
+ +inline-block
65
+ cursor: pointer
66
+ +transition(transform 0.3s ease-out)
67
+ -webkit-transform: translateZ(0)
68
+ -webkit-font-smoothing: antialiased
69
+ &:hover, &:focus, &:active
70
+ +transform(scale(1.03))
@@ -0,0 +1,340 @@
1
+ /*! normalize.css v3.0.2 | MIT License | git.io/normalize
2
+
3
+ /**
4
+ * 1. Set default font family to sans-serif.
5
+ * 2. Prevent iOS text size adjust after orientation change, without disabling
6
+ * user zoom. */
7
+
8
+ html
9
+ font-family: sans-serif
10
+ /* 1 */
11
+ -ms-text-size-adjust: 100%
12
+ /* 2 */
13
+ -webkit-text-size-adjust: 100%
14
+ /* 2 */
15
+
16
+ /**
17
+ * Remove default margin. */
18
+
19
+ body
20
+ margin: 0
21
+
22
+ /* HTML5 display definitions
23
+ * ==========================================================================
24
+
25
+ /**
26
+ * Correct `block` display not defined for any HTML5 element in IE 8/9.
27
+ * Correct `block` display not defined for `details` or `summary` in IE 10/11
28
+ * and Firefox.
29
+ * Correct `block` display not defined for `main` in IE 11. */
30
+
31
+ article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary
32
+ display: block
33
+
34
+ /**
35
+ * 1. Correct `inline-block` display not defined in IE 8/9.
36
+ * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. */
37
+
38
+ audio, canvas, progress, video
39
+ display: inline-block
40
+ /* 1 */
41
+ vertical-align: baseline
42
+ /* 2 */
43
+
44
+ /**
45
+ * Prevent modern browsers from displaying `audio` without controls.
46
+ * Remove excess height in iOS 5 devices. */
47
+
48
+ audio:not([controls])
49
+ display: none
50
+ height: 0
51
+
52
+ /**
53
+ * Address `[hidden]` styling not present in IE 8/9/10.
54
+ * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. */
55
+
56
+ [hidden], template
57
+ display: none
58
+
59
+ /* Links
60
+ * ==========================================================================
61
+
62
+ /**
63
+ * Remove the gray background color from active links in IE 10. */
64
+
65
+ a
66
+ background-color: transparent
67
+ &:active, &:hover
68
+ outline: 0
69
+
70
+ /**
71
+ * Improve readability when focused and also mouse hovered in all browsers.
72
+
73
+ /* Text-level semantics
74
+ * ==========================================================================
75
+
76
+ /**
77
+ * Address styling not present in IE 8/9/10/11, Safari, and Chrome. */
78
+
79
+ abbr[title]
80
+ border-bottom: 1px dotted
81
+
82
+ /**
83
+ * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. */
84
+
85
+ b, strong
86
+ font-weight: bold
87
+
88
+ /**
89
+ * Address styling not present in Safari and Chrome. */
90
+
91
+ dfn
92
+ font-style: italic
93
+
94
+ /**
95
+ * Address variable `h1` font-size and margin within `section` and `article`
96
+ * contexts in Firefox 4+, Safari, and Chrome. */
97
+
98
+ h1
99
+ font-size: 2em
100
+ margin: 0.67em 0
101
+
102
+ /**
103
+ * Address styling not present in IE 8/9. */
104
+
105
+ mark
106
+ background: #ff0
107
+ color: #000
108
+
109
+ /**
110
+ * Address inconsistent and variable font size in all browsers. */
111
+
112
+ small
113
+ font-size: 80%
114
+
115
+ /**
116
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers. */
117
+
118
+ sub
119
+ font-size: 75%
120
+ line-height: 0
121
+ position: relative
122
+ vertical-align: baseline
123
+
124
+ sup
125
+ font-size: 75%
126
+ line-height: 0
127
+ position: relative
128
+ vertical-align: baseline
129
+ top: -0.5em
130
+
131
+ sub
132
+ bottom: -0.25em
133
+
134
+ /* Embedded content
135
+ * ==========================================================================
136
+
137
+ /**
138
+ * Remove border when inside `a` element in IE 8/9/10. */
139
+
140
+ img
141
+ border: 0
142
+
143
+ /**
144
+ * Correct overflow not hidden in IE 9/10/11. */
145
+
146
+ svg:not(:root)
147
+ overflow: hidden
148
+
149
+ /* Grouping content
150
+ * ==========================================================================
151
+
152
+ /**
153
+ * Address margin not present in IE 8/9 and Safari. */
154
+
155
+ figure
156
+ margin: 1em 40px
157
+
158
+ /**
159
+ * Address differences between Firefox and other browsers. */
160
+
161
+ hr
162
+ -moz-box-sizing: content-box
163
+ box-sizing: content-box
164
+ height: 0
165
+
166
+ /**
167
+ * Contain overflow in all browsers. */
168
+
169
+ pre
170
+ overflow: auto
171
+
172
+ /**
173
+ * Address odd `em`-unit font size rendering in all browsers. */
174
+
175
+ code, kbd, pre, samp
176
+ font-family: monospace, monospace
177
+ font-size: 1em
178
+
179
+ /* Forms
180
+ * ==========================================================================
181
+
182
+ /**
183
+ * Known limitation: by default, Chrome and Safari on OS X allow very limited
184
+ * styling of `select`, unless a `border` property is set.
185
+
186
+ /**
187
+ * 1. Correct color not being inherited.
188
+ * Known issue: affects color of disabled elements.
189
+ * 2. Correct font properties not being inherited.
190
+ * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. */
191
+
192
+ button, input, optgroup, select, textarea
193
+ color: inherit
194
+ /* 1 */
195
+ font: inherit
196
+ /* 2 */
197
+ margin: 0
198
+ /* 3 */
199
+
200
+ /**
201
+ * Address `overflow` set to `hidden` in IE 8/9/10/11. */
202
+
203
+ button
204
+ overflow: visible
205
+ text-transform: none
206
+
207
+ /**
208
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
209
+ * All other form control elements do not inherit `text-transform` values.
210
+ * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
211
+ * Correct `select` style inheritance in Firefox. */
212
+
213
+ select
214
+ text-transform: none
215
+
216
+ /**
217
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
218
+ * and `video` controls.
219
+ * 2. Correct inability to style clickable `input` types in iOS.
220
+ * 3. Improve usability and consistency of cursor style between image-type
221
+ * `input` and others. */
222
+
223
+ button, html input[type="button"]
224
+ -webkit-appearance: button
225
+ /* 2 */
226
+ cursor: pointer
227
+ /* 3 */
228
+
229
+ input
230
+ &[type="reset"], &[type="submit"]
231
+ -webkit-appearance: button
232
+ /* 2 */
233
+ cursor: pointer
234
+ /* 3 */
235
+
236
+ /**
237
+ * Re-set default cursor for disabled elements. */
238
+
239
+ button[disabled], html input[disabled]
240
+ cursor: default
241
+
242
+ /**
243
+ * Remove inner padding and border in Firefox 4+. */
244
+
245
+ button::-moz-focus-inner
246
+ border: 0
247
+ padding: 0
248
+
249
+ input
250
+ &::-moz-focus-inner
251
+ border: 0
252
+ padding: 0
253
+ line-height: normal
254
+ &[type="checkbox"], &[type="radio"]
255
+ box-sizing: border-box
256
+ /* 1 */
257
+ padding: 0
258
+ /* 2 */
259
+ &[type="number"]
260
+ &::-webkit-inner-spin-button, &::-webkit-outer-spin-button
261
+ height: auto
262
+ &[type="search"]
263
+ -webkit-appearance: textfield
264
+ /* 1 */
265
+ -moz-box-sizing: content-box
266
+ -webkit-box-sizing: content-box
267
+ /* 2 */
268
+ box-sizing: content-box
269
+ &::-webkit-search-cancel-button, &::-webkit-search-decoration
270
+ -webkit-appearance: none
271
+
272
+ /**
273
+ * Address Firefox 4+ setting `line-height` on `input` using `!important` in
274
+ * the UA stylesheet.
275
+
276
+ /**
277
+ * It's recommended that you don't attempt to style these elements.
278
+ * Firefox's implementation doesn't respect box-sizing, padding, or width.
279
+ *
280
+ * 1. Address box sizing set to `content-box` in IE 8/9/10.
281
+ * 2. Remove excess padding in IE 8/9/10.
282
+
283
+ /**
284
+ * Fix the cursor style for Chrome's increment/decrement buttons. For certain
285
+ * `font-size` values of the `input`, it causes the cursor style of the
286
+ * decrement button to change from `default` to `text`.
287
+
288
+ /**
289
+ * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
290
+ * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
291
+ * (include `-moz` to future-proof).
292
+
293
+ /**
294
+ * Remove inner padding and search cancel button in Safari and Chrome on OS X.
295
+ * Safari (but not Chrome) clips the cancel button when the search input has
296
+ * padding (and `textfield` appearance).
297
+
298
+ /**
299
+ * Define consistent border, margin, and padding. */
300
+
301
+ fieldset
302
+ border: 1px solid #c0c0c0
303
+ margin: 0 2px
304
+ padding: 0.35em 0.625em 0.75em
305
+
306
+ /**
307
+ * 1. Correct `color` not being inherited in IE 8/9/10/11.
308
+ * 2. Remove padding so people aren't caught out if they zero out fieldsets. */
309
+
310
+ legend
311
+ border: 0
312
+ /* 1 */
313
+ padding: 0
314
+ /* 2 */
315
+
316
+ /**
317
+ * Remove default vertical scrollbar in IE 8/9/10/11. */
318
+
319
+ textarea
320
+ overflow: auto
321
+
322
+ /**
323
+ * Don't inherit the `font-weight` (applied by a rule above).
324
+ * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. */
325
+
326
+ optgroup
327
+ font-weight: bold
328
+
329
+ /* Tables
330
+ * ==========================================================================
331
+
332
+ /**
333
+ * Remove most spacing between table cells. */
334
+
335
+ table
336
+ border-collapse: collapse
337
+ border-spacing: 0
338
+
339
+ td, th
340
+ padding: 0
@@ -0,0 +1,46 @@
1
+ /* http://meyerweb.com/eric/tools/css/reset/
2
+ v2.0 | 20110126
3
+ License: none (public domain) */
4
+
5
+ html, body, div, span, applet, object, iframe,
6
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
7
+ a, abbr, acronym, address, big, cite, code,
8
+ del, dfn, em, img, ins, kbd, q, s, samp,
9
+ small, strike, strong, sub, sup, tt, var,
10
+ b, u, i, center,
11
+ dl, dt, dd, ol, ul, li,
12
+ fieldset, form, label, legend,
13
+ table, caption, tbody, tfoot, thead, tr, th, td,
14
+ article, aside, canvas, details, embed,
15
+ figure, figcaption, footer, header, hgroup,
16
+ menu, nav, output, ruby, section, summary,
17
+ time, mark, audio, video
18
+ margin: 0
19
+ padding: 0
20
+ border: 0
21
+ font-size: 100%
22
+ font: inherit
23
+ vertical-align: baseline
24
+
25
+ /* HTML5 display-role reset for older browsers */
26
+ article, aside, details, figcaption, figure,
27
+ footer, header, hgroup, menu, nav, section
28
+ display: block
29
+
30
+ body
31
+ line-height: 1
32
+
33
+ ol, ul
34
+ list-style: none
35
+
36
+ blockquote, q
37
+ quotes: none
38
+
39
+ blockquote:before, blockquote:after,
40
+ q:before, q:after
41
+ content: ''
42
+ content: none
43
+
44
+ table
45
+ border-collapse: collapse
46
+ border-spacing: 0