dashing-jruby 1.3.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +9 -0
  3. data/bin/dashing +9 -0
  4. data/javascripts/batman.jquery.js +163 -0
  5. data/javascripts/batman.js +13680 -0
  6. data/javascripts/dashing.coffee +125 -0
  7. data/javascripts/es5-shim.js +1021 -0
  8. data/javascripts/jquery.js +4 -0
  9. data/lib/dashing.rb +6 -0
  10. data/lib/dashing/app.rb +167 -0
  11. data/lib/dashing/cli.rb +109 -0
  12. data/lib/dashing/downloader.rb +18 -0
  13. data/templates/dashboard/%name%.erb.tt +7 -0
  14. data/templates/job/%name%.rb +4 -0
  15. data/templates/project/.gitignore +2 -0
  16. data/templates/project/Gemfile +6 -0
  17. data/templates/project/README.md +1 -0
  18. data/templates/project/assets/fonts/fontawesome-webfont.eot +0 -0
  19. data/templates/project/assets/fonts/fontawesome-webfont.svg +399 -0
  20. data/templates/project/assets/fonts/fontawesome-webfont.ttf +0 -0
  21. data/templates/project/assets/fonts/fontawesome-webfont.woff +0 -0
  22. data/templates/project/assets/images/logo.png +0 -0
  23. data/templates/project/assets/javascripts/application.coffee +25 -0
  24. data/templates/project/assets/javascripts/d3-3.2.8.js +5 -0
  25. data/templates/project/assets/javascripts/dashing.gridster.coffee +37 -0
  26. data/templates/project/assets/javascripts/gridster/jquery.gridster.js +3263 -0
  27. data/templates/project/assets/javascripts/gridster/jquery.leanModal.min.js +5 -0
  28. data/templates/project/assets/javascripts/jquery.knob.js +646 -0
  29. data/templates/project/assets/javascripts/rickshaw-1.4.3.min.js +2 -0
  30. data/templates/project/assets/stylesheets/application.scss +258 -0
  31. data/templates/project/assets/stylesheets/font-awesome.css +1479 -0
  32. data/templates/project/assets/stylesheets/jquery.gridster.css +57 -0
  33. data/templates/project/config.ru +18 -0
  34. data/templates/project/dashboards/layout.erb +32 -0
  35. data/templates/project/dashboards/sample.erb +25 -0
  36. data/templates/project/dashboards/sampletv.erb +56 -0
  37. data/templates/project/jobs/buzzwords.rb +9 -0
  38. data/templates/project/jobs/convergence.rb +14 -0
  39. data/templates/project/jobs/sample.rb +13 -0
  40. data/templates/project/jobs/twitter.rb +28 -0
  41. data/templates/project/lib/.empty_directory +1 -0
  42. data/templates/project/public/404.html +26 -0
  43. data/templates/project/public/favicon.ico +0 -0
  44. data/templates/project/widgets/clock/clock.coffee +18 -0
  45. data/templates/project/widgets/clock/clock.html +2 -0
  46. data/templates/project/widgets/clock/clock.scss +13 -0
  47. data/templates/project/widgets/comments/comments.coffee +24 -0
  48. data/templates/project/widgets/comments/comments.html +7 -0
  49. data/templates/project/widgets/comments/comments.scss +33 -0
  50. data/templates/project/widgets/graph/graph.coffee +36 -0
  51. data/templates/project/widgets/graph/graph.html +5 -0
  52. data/templates/project/widgets/graph/graph.scss +65 -0
  53. data/templates/project/widgets/iframe/iframe.coffee +9 -0
  54. data/templates/project/widgets/iframe/iframe.html +1 -0
  55. data/templates/project/widgets/iframe/iframe.scss +8 -0
  56. data/templates/project/widgets/image/image.coffee +9 -0
  57. data/templates/project/widgets/image/image.html +1 -0
  58. data/templates/project/widgets/image/image.scss +13 -0
  59. data/templates/project/widgets/list/list.coffee +6 -0
  60. data/templates/project/widgets/list/list.html +18 -0
  61. data/templates/project/widgets/list/list.scss +60 -0
  62. data/templates/project/widgets/meter/meter.coffee +14 -0
  63. data/templates/project/widgets/meter/meter.html +7 -0
  64. data/templates/project/widgets/meter/meter.scss +35 -0
  65. data/templates/project/widgets/number/number.coffee +24 -0
  66. data/templates/project/widgets/number/number.html +11 -0
  67. data/templates/project/widgets/number/number.scss +39 -0
  68. data/templates/project/widgets/text/text.coffee +1 -0
  69. data/templates/project/widgets/text/text.html +7 -0
  70. data/templates/project/widgets/text/text.scss +32 -0
  71. data/templates/widget/%name%/%name%.coffee.tt +9 -0
  72. data/templates/widget/%name%/%name%.html +1 -0
  73. data/templates/widget/%name%/%name%.scss.tt +3 -0
  74. metadata +339 -0
@@ -0,0 +1,65 @@
1
+ // ----------------------------------------------------------------------------
2
+ // Sass declarations
3
+ // ----------------------------------------------------------------------------
4
+ $background-color: #dc5945;
5
+
6
+ $title-color: rgba(255, 255, 255, 0.7);
7
+ $moreinfo-color: rgba(255, 255, 255, 0.3);
8
+ $tick-color: rgba(0, 0, 0, 0.4);
9
+
10
+
11
+ // ----------------------------------------------------------------------------
12
+ // Widget-graph styles
13
+ // ----------------------------------------------------------------------------
14
+ .widget-graph {
15
+
16
+ background-color: $background-color;
17
+ position: relative;
18
+
19
+
20
+ svg {
21
+ position: absolute;
22
+ opacity: 0.4;
23
+ fill-opacity: 0.4;
24
+ left: 0px;
25
+ top: 0px;
26
+ }
27
+
28
+ .title, .value {
29
+ position: relative;
30
+ z-index: 99;
31
+ }
32
+
33
+ .title {
34
+ color: $title-color;
35
+ }
36
+
37
+ .more-info {
38
+ color: $moreinfo-color;
39
+ font-weight: 600;
40
+ font-size: 20px;
41
+ margin-top: 0;
42
+ }
43
+
44
+ .x_tick {
45
+ position: absolute;
46
+ bottom: 0;
47
+ .title {
48
+ font-size: 20px;
49
+ color: $tick-color;
50
+ opacity: 0.5;
51
+ padding-bottom: 3px;
52
+ }
53
+ }
54
+
55
+ .y_ticks {
56
+ font-size: 20px;
57
+ fill: $tick-color;
58
+ fill-opacity: 1;
59
+ }
60
+
61
+ .domain {
62
+ display: none;
63
+ }
64
+
65
+ }
@@ -0,0 +1,9 @@
1
+ class Dashing.Iframe extends Dashing.Widget
2
+
3
+ ready: ->
4
+ # This is fired when the widget is done being rendered
5
+
6
+ onData: (data) ->
7
+ # Handle incoming data
8
+ # You can access the html node of this widget with `@node`
9
+ # Example: $(@node).fadeOut().fadeIn() will make the node flash each time data comes in.
@@ -0,0 +1 @@
1
+ <iframe data-bind-src="url" frameborder=0></iframe>
@@ -0,0 +1,8 @@
1
+ .widget-iframe {
2
+ padding: 3px 0px 0px 0px !important;
3
+
4
+ iframe {
5
+ width: 100%;
6
+ height: 100%;
7
+ }
8
+ }
@@ -0,0 +1,9 @@
1
+ class Dashing.Image extends Dashing.Widget
2
+
3
+ ready: ->
4
+ # This is fired when the widget is done being rendered
5
+
6
+ onData: (data) ->
7
+ # Handle incoming data
8
+ # You can access the html node of this widget with `@node`
9
+ # Example: $(@node).fadeOut().fadeIn() will make the node flash each time data comes in.
@@ -0,0 +1 @@
1
+ <img data-bind-src="image | prepend '/assets'" data-bind-width="width"/>
@@ -0,0 +1,13 @@
1
+ // ----------------------------------------------------------------------------
2
+ // Sass declarations
3
+ // ----------------------------------------------------------------------------
4
+ $background-color: #4b4b4b;
5
+
6
+ // ----------------------------------------------------------------------------
7
+ // Widget-image styles
8
+ // ----------------------------------------------------------------------------
9
+ .widget-image {
10
+
11
+ background-color: $background-color;
12
+
13
+ }
@@ -0,0 +1,6 @@
1
+ class Dashing.List extends Dashing.Widget
2
+ ready: ->
3
+ if @get('unordered')
4
+ $(@node).find('ol').remove()
5
+ else
6
+ $(@node).find('ul').remove()
@@ -0,0 +1,18 @@
1
+ <h1 class="title" data-bind="title"></h1>
2
+
3
+ <ol>
4
+ <li data-foreach-item="items">
5
+ <span class="label" data-bind="item.label"></span>
6
+ <span class="value" data-bind="item.value"></span>
7
+ </li>
8
+ </ol>
9
+
10
+ <ul class="list-nostyle">
11
+ <li data-foreach-item="items">
12
+ <span class="label" data-bind="item.label"></span>
13
+ <span class="value" data-bind="item.value"></span>
14
+ </li>
15
+ </ul>
16
+
17
+ <p class="more-info" data-bind="moreinfo"></p>
18
+ <p class="updated-at" data-bind="updatedAtMessage"></p>
@@ -0,0 +1,60 @@
1
+ // ----------------------------------------------------------------------------
2
+ // Sass declarations
3
+ // ----------------------------------------------------------------------------
4
+ $background-color: #12b0c5;
5
+ $value-color: #fff;
6
+
7
+ $title-color: rgba(255, 255, 255, 0.7);
8
+ $label-color: rgba(255, 255, 255, 0.7);
9
+ $moreinfo-color: rgba(255, 255, 255, 0.7);
10
+
11
+ // ----------------------------------------------------------------------------
12
+ // Widget-list styles
13
+ // ----------------------------------------------------------------------------
14
+ .widget-list {
15
+
16
+ background-color: $background-color;
17
+ vertical-align: top;
18
+
19
+ .title {
20
+ color: $title-color;
21
+ }
22
+
23
+ ol, ul {
24
+ margin: 0 15px;
25
+ text-align: left;
26
+ color: $label-color;
27
+ }
28
+
29
+ ol {
30
+ list-style-position: inside;
31
+ }
32
+
33
+ li {
34
+ margin-bottom: 5px;
35
+ }
36
+
37
+ .list-nostyle {
38
+ list-style: none;
39
+ }
40
+
41
+ .label {
42
+ color: $label-color;
43
+ }
44
+
45
+ .value {
46
+ float: right;
47
+ margin-left: 12px;
48
+ font-weight: 600;
49
+ color: $value-color;
50
+ }
51
+
52
+ .updated-at {
53
+ color: rgba(0, 0, 0, 0.3);
54
+ }
55
+
56
+ .more-info {
57
+ color: $moreinfo-color;
58
+ }
59
+
60
+ }
@@ -0,0 +1,14 @@
1
+ class Dashing.Meter extends Dashing.Widget
2
+
3
+ @accessor 'value', Dashing.AnimatedValue
4
+
5
+ constructor: ->
6
+ super
7
+ @observe 'value', (value) ->
8
+ $(@node).find(".meter").val(value).trigger('change')
9
+
10
+ ready: ->
11
+ meter = $(@node).find(".meter")
12
+ meter.attr("data-bgcolor", meter.css("background-color"))
13
+ meter.attr("data-fgcolor", meter.css("color"))
14
+ meter.knob()
@@ -0,0 +1,7 @@
1
+ <h1 class="title" data-bind="title"></h1>
2
+
3
+ <input class="meter" data-angleOffset=-125 data-angleArc=250 data-width=200 data-readOnly=true data-bind-value="value | shortenedNumber" data-bind-data-min="min" data-bind-data-max="max">
4
+
5
+ <p class="more-info" data-bind="moreinfo"></p>
6
+
7
+ <p class="updated-at" data-bind="updatedAtMessage"></p>
@@ -0,0 +1,35 @@
1
+ // ----------------------------------------------------------------------------
2
+ // Sass declarations
3
+ // ----------------------------------------------------------------------------
4
+ $background-color: #9c4274;
5
+
6
+ $title-color: rgba(255, 255, 255, 0.7);
7
+ $moreinfo-color: rgba(255, 255, 255, 0.3);
8
+
9
+ $meter-background: darken($background-color, 15%);
10
+
11
+ // ----------------------------------------------------------------------------
12
+ // Widget-meter styles
13
+ // ----------------------------------------------------------------------------
14
+ .widget-meter {
15
+
16
+ background-color: $background-color;
17
+
18
+ input.meter {
19
+ background-color: $meter-background;
20
+ color: #fff;
21
+ }
22
+
23
+ .title {
24
+ color: $title-color;
25
+ }
26
+
27
+ .more-info {
28
+ color: $moreinfo-color;
29
+ }
30
+
31
+ .updated-at {
32
+ color: rgba(0, 0, 0, 0.3);
33
+ }
34
+
35
+ }
@@ -0,0 +1,24 @@
1
+ class Dashing.Number extends Dashing.Widget
2
+ @accessor 'current', Dashing.AnimatedValue
3
+
4
+ @accessor 'difference', ->
5
+ if @get('last')
6
+ last = parseInt(@get('last'))
7
+ current = parseInt(@get('current'))
8
+ if last != 0
9
+ diff = Math.abs(Math.round((current - last) / last * 100))
10
+ "#{diff}%"
11
+ else
12
+ ""
13
+
14
+ @accessor 'arrow', ->
15
+ if @get('last')
16
+ if parseInt(@get('current')) > parseInt(@get('last')) then 'icon-arrow-up' else 'icon-arrow-down'
17
+
18
+ onData: (data) ->
19
+ if data.status
20
+ # clear existing "status-*" classes
21
+ $(@get('node')).attr 'class', (i,c) ->
22
+ c.replace /\bstatus-\S+/g, ''
23
+ # add new class
24
+ $(@get('node')).addClass "status-#{data.status}"
@@ -0,0 +1,11 @@
1
+ <h1 class="title" data-bind="title"></h1>
2
+
3
+ <h2 class="value" data-bind="current | shortenedNumber | prepend prefix | append suffix"></h2>
4
+
5
+ <p class="change-rate">
6
+ <i data-bind-class="arrow"></i><span data-bind="difference"></span>
7
+ </p>
8
+
9
+ <p class="more-info" data-bind="moreinfo"></p>
10
+
11
+ <p class="updated-at" data-bind="updatedAtMessage"></p>
@@ -0,0 +1,39 @@
1
+ // ----------------------------------------------------------------------------
2
+ // Sass declarations
3
+ // ----------------------------------------------------------------------------
4
+ $background-color: #47bbb3;
5
+ $value-color: #fff;
6
+
7
+ $title-color: rgba(255, 255, 255, 0.7);
8
+ $moreinfo-color: rgba(255, 255, 255, 0.7);
9
+
10
+ // ----------------------------------------------------------------------------
11
+ // Widget-number styles
12
+ // ----------------------------------------------------------------------------
13
+ .widget-number {
14
+
15
+ background-color: $background-color;
16
+
17
+ .title {
18
+ color: $title-color;
19
+ }
20
+
21
+ .value {
22
+ color: $value-color;
23
+ }
24
+
25
+ .change-rate {
26
+ font-weight: 500;
27
+ font-size: 30px;
28
+ color: $value-color;
29
+ }
30
+
31
+ .more-info {
32
+ color: $moreinfo-color;
33
+ }
34
+
35
+ .updated-at {
36
+ color: rgba(0, 0, 0, 0.3);
37
+ }
38
+
39
+ }
@@ -0,0 +1 @@
1
+ class Dashing.Text extends Dashing.Widget
@@ -0,0 +1,7 @@
1
+ <h1 class="title" data-bind="title"></h1>
2
+
3
+ <h3 data-bind="text"></h3>
4
+
5
+ <p class="more-info" data-bind="moreinfo"></p>
6
+
7
+ <p class="updated-at" data-bind="updatedAtMessage"></p>
@@ -0,0 +1,32 @@
1
+ // ----------------------------------------------------------------------------
2
+ // Sass declarations
3
+ // ----------------------------------------------------------------------------
4
+ $background-color: #ec663c;
5
+
6
+ $title-color: rgba(255, 255, 255, 0.7);
7
+ $moreinfo-color: rgba(255, 255, 255, 0.7);
8
+
9
+ // ----------------------------------------------------------------------------
10
+ // Widget-text styles
11
+ // ----------------------------------------------------------------------------
12
+ .widget-text {
13
+
14
+ background-color: $background-color;
15
+
16
+ .title {
17
+ color: $title-color;
18
+ }
19
+
20
+ .more-info {
21
+ color: $moreinfo-color;
22
+ }
23
+
24
+ .updated-at {
25
+ color: rgba(255, 255, 255, 0.7);
26
+ }
27
+
28
+
29
+ &.large h3 {
30
+ font-size: 65px;
31
+ }
32
+ }
@@ -0,0 +1,9 @@
1
+ class Dashing.<%= Thor::Util.camel_case(name) %> extends Dashing.Widget
2
+
3
+ ready: ->
4
+ # This is fired when the widget is done being rendered
5
+
6
+ onData: (data) ->
7
+ # Handle incoming data
8
+ # You can access the html node of this widget with `@node`
9
+ # Example: $(@node).fadeOut().fadeIn() will make the node flash each time data comes in.
@@ -0,0 +1 @@
1
+ <div data-bind="value"></div>
@@ -0,0 +1,3 @@
1
+ .widget-<%= Dashing::CLI.hyphenate(name) %> {
2
+
3
+ }
metadata ADDED
@@ -0,0 +1,339 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dashing-jruby
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.3.4
5
+ platform: ruby
6
+ authors:
7
+ - Daniel Beauchamp
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-05-30 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ~>
17
+ - !ruby/object:Gem::Version
18
+ version: 3.2.12
19
+ name: sass
20
+ prerelease: false
21
+ type: :runtime
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 3.2.12
27
+ - !ruby/object:Gem::Dependency
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: 2.2.0
33
+ name: coffee-script
34
+ prerelease: false
35
+ type: :runtime
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: 2.2.0
41
+ - !ruby/object:Gem::Dependency
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ~>
45
+ - !ruby/object:Gem::Version
46
+ version: 2.0.2
47
+ name: execjs
48
+ prerelease: false
49
+ type: :runtime
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 2.0.2
55
+ - !ruby/object:Gem::Dependency
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ~>
59
+ - !ruby/object:Gem::Version
60
+ version: 1.4.4
61
+ name: sinatra
62
+ prerelease: false
63
+ type: :runtime
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: 1.4.4
69
+ - !ruby/object:Gem::Dependency
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ~>
73
+ - !ruby/object:Gem::Version
74
+ version: 1.4.2
75
+ name: sinatra-contrib
76
+ prerelease: false
77
+ type: :runtime
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: 1.4.2
83
+ - !ruby/object:Gem::Dependency
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - '>='
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ name: puma
90
+ prerelease: false
91
+ type: :runtime
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ requirement: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ~>
101
+ - !ruby/object:Gem::Version
102
+ version: 2.0.24
103
+ name: rufus-scheduler
104
+ prerelease: false
105
+ type: :runtime
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 2.0.24
111
+ - !ruby/object:Gem::Dependency
112
+ requirement: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ~>
115
+ - !ruby/object:Gem::Version
116
+ version: 0.18.1
117
+ name: thor
118
+ prerelease: false
119
+ type: :runtime
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ~>
123
+ - !ruby/object:Gem::Version
124
+ version: 0.18.1
125
+ - !ruby/object:Gem::Dependency
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ~>
129
+ - !ruby/object:Gem::Version
130
+ version: 2.10.1
131
+ name: sprockets
132
+ prerelease: false
133
+ type: :runtime
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ~>
137
+ - !ruby/object:Gem::Version
138
+ version: 2.10.1
139
+ - !ruby/object:Gem::Dependency
140
+ requirement: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - ~>
143
+ - !ruby/object:Gem::Version
144
+ version: 1.5.2
145
+ name: rack
146
+ prerelease: false
147
+ type: :runtime
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ~>
151
+ - !ruby/object:Gem::Version
152
+ version: 1.5.2
153
+ - !ruby/object:Gem::Dependency
154
+ requirement: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - ~>
157
+ - !ruby/object:Gem::Version
158
+ version: 10.1.0
159
+ name: rake
160
+ prerelease: false
161
+ type: :development
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ~>
165
+ - !ruby/object:Gem::Version
166
+ version: 10.1.0
167
+ - !ruby/object:Gem::Dependency
168
+ requirement: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - ~>
171
+ - !ruby/object:Gem::Version
172
+ version: 4.0.4
173
+ name: haml
174
+ prerelease: false
175
+ type: :development
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ~>
179
+ - !ruby/object:Gem::Version
180
+ version: 4.0.4
181
+ - !ruby/object:Gem::Dependency
182
+ requirement: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - ~>
185
+ - !ruby/object:Gem::Version
186
+ version: 5.2.0
187
+ name: minitest
188
+ prerelease: false
189
+ type: :development
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ~>
193
+ - !ruby/object:Gem::Version
194
+ version: 5.2.0
195
+ - !ruby/object:Gem::Dependency
196
+ requirement: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - ~>
199
+ - !ruby/object:Gem::Version
200
+ version: 0.14.0
201
+ name: mocha
202
+ prerelease: false
203
+ type: :development
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - ~>
207
+ - !ruby/object:Gem::Version
208
+ version: 0.14.0
209
+ - !ruby/object:Gem::Dependency
210
+ requirement: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - ~>
213
+ - !ruby/object:Gem::Version
214
+ version: 1.3.0
215
+ name: fakeweb
216
+ prerelease: false
217
+ type: :development
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - ~>
221
+ - !ruby/object:Gem::Version
222
+ version: 1.3.0
223
+ - !ruby/object:Gem::Dependency
224
+ requirement: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - ~>
227
+ - !ruby/object:Gem::Version
228
+ version: 0.8.2
229
+ name: simplecov
230
+ prerelease: false
231
+ type: :development
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ~>
235
+ - !ruby/object:Gem::Version
236
+ version: 0.8.2
237
+ description: This framework lets you build & easily layout dashboards with your own custom widgets. Use it to make a status boards for your ops team, or use it to track signups, conversion rates, or whatever else metrics you'd like to see in one spot. Included with the framework are ready-made widgets for you to use or customize. All of this code was extracted out of a project at Shopify that displays dashboards on TVs around the office.
238
+ email: daniel.beauchamp@shopify.com
239
+ executables:
240
+ - dashing
241
+ extensions: []
242
+ extra_rdoc_files: []
243
+ files:
244
+ - README.md
245
+ - bin/dashing
246
+ - javascripts/batman.jquery.js
247
+ - javascripts/batman.js
248
+ - javascripts/dashing.coffee
249
+ - javascripts/es5-shim.js
250
+ - javascripts/jquery.js
251
+ - lib/dashing.rb
252
+ - lib/dashing/app.rb
253
+ - lib/dashing/cli.rb
254
+ - lib/dashing/downloader.rb
255
+ - templates/dashboard/%name%.erb.tt
256
+ - templates/job/%name%.rb
257
+ - templates/project/.gitignore
258
+ - templates/project/Gemfile
259
+ - templates/project/README.md
260
+ - templates/project/assets/fonts/fontawesome-webfont.eot
261
+ - templates/project/assets/fonts/fontawesome-webfont.svg
262
+ - templates/project/assets/fonts/fontawesome-webfont.ttf
263
+ - templates/project/assets/fonts/fontawesome-webfont.woff
264
+ - templates/project/assets/images/logo.png
265
+ - templates/project/assets/javascripts/application.coffee
266
+ - templates/project/assets/javascripts/d3-3.2.8.js
267
+ - templates/project/assets/javascripts/dashing.gridster.coffee
268
+ - templates/project/assets/javascripts/gridster/jquery.gridster.js
269
+ - templates/project/assets/javascripts/gridster/jquery.leanModal.min.js
270
+ - templates/project/assets/javascripts/jquery.knob.js
271
+ - templates/project/assets/javascripts/rickshaw-1.4.3.min.js
272
+ - templates/project/assets/stylesheets/application.scss
273
+ - templates/project/assets/stylesheets/font-awesome.css
274
+ - templates/project/assets/stylesheets/jquery.gridster.css
275
+ - templates/project/config.ru
276
+ - templates/project/dashboards/layout.erb
277
+ - templates/project/dashboards/sample.erb
278
+ - templates/project/dashboards/sampletv.erb
279
+ - templates/project/jobs/buzzwords.rb
280
+ - templates/project/jobs/convergence.rb
281
+ - templates/project/jobs/sample.rb
282
+ - templates/project/jobs/twitter.rb
283
+ - templates/project/lib/.empty_directory
284
+ - templates/project/public/404.html
285
+ - templates/project/public/favicon.ico
286
+ - templates/project/widgets/clock/clock.coffee
287
+ - templates/project/widgets/clock/clock.html
288
+ - templates/project/widgets/clock/clock.scss
289
+ - templates/project/widgets/comments/comments.coffee
290
+ - templates/project/widgets/comments/comments.html
291
+ - templates/project/widgets/comments/comments.scss
292
+ - templates/project/widgets/graph/graph.coffee
293
+ - templates/project/widgets/graph/graph.html
294
+ - templates/project/widgets/graph/graph.scss
295
+ - templates/project/widgets/iframe/iframe.coffee
296
+ - templates/project/widgets/iframe/iframe.html
297
+ - templates/project/widgets/iframe/iframe.scss
298
+ - templates/project/widgets/image/image.coffee
299
+ - templates/project/widgets/image/image.html
300
+ - templates/project/widgets/image/image.scss
301
+ - templates/project/widgets/list/list.coffee
302
+ - templates/project/widgets/list/list.html
303
+ - templates/project/widgets/list/list.scss
304
+ - templates/project/widgets/meter/meter.coffee
305
+ - templates/project/widgets/meter/meter.html
306
+ - templates/project/widgets/meter/meter.scss
307
+ - templates/project/widgets/number/number.coffee
308
+ - templates/project/widgets/number/number.html
309
+ - templates/project/widgets/number/number.scss
310
+ - templates/project/widgets/text/text.coffee
311
+ - templates/project/widgets/text/text.html
312
+ - templates/project/widgets/text/text.scss
313
+ - templates/widget/%name%/%name%.coffee.tt
314
+ - templates/widget/%name%/%name%.html
315
+ - templates/widget/%name%/%name%.scss.tt
316
+ homepage: http://shopify.github.com/dashing
317
+ licenses: []
318
+ metadata: {}
319
+ post_install_message:
320
+ rdoc_options: []
321
+ require_paths:
322
+ - lib
323
+ required_ruby_version: !ruby/object:Gem::Requirement
324
+ requirements:
325
+ - - '>='
326
+ - !ruby/object:Gem::Version
327
+ version: '0'
328
+ required_rubygems_version: !ruby/object:Gem::Requirement
329
+ requirements:
330
+ - - '>='
331
+ - !ruby/object:Gem::Version
332
+ version: '0'
333
+ requirements: []
334
+ rubyforge_project:
335
+ rubygems_version: 2.2.2
336
+ signing_key:
337
+ specification_version: 4
338
+ summary: The exceptionally handsome dashboard framework.
339
+ test_files: []