helios 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. data/Gemfile.lock +82 -37
  2. data/README.md +16 -0
  3. data/bin/helios +4 -0
  4. data/example/Gemfile +7 -0
  5. data/example/Gemfile.lock +149 -0
  6. data/example/Procfile +1 -0
  7. data/example/Sample.xcdatamodeld/Sample.xcdatamodel/contents +23 -0
  8. data/example/config.ru +6 -0
  9. data/helios.gemspec +17 -7
  10. data/lib/helios.rb +15 -1
  11. data/lib/helios/backend.rb +46 -0
  12. data/lib/helios/backend/data.rb +36 -0
  13. data/lib/helios/backend/in-app-purchase.rb +33 -0
  14. data/lib/helios/backend/passbook.rb +25 -0
  15. data/lib/helios/backend/push-notification.rb +90 -0
  16. data/lib/helios/commands.rb +1 -0
  17. data/lib/helios/commands/new.rb +27 -0
  18. data/lib/helios/frontend.rb +56 -0
  19. data/lib/helios/frontend/images/data.png +0 -0
  20. data/lib/helios/frontend/images/data.svg +1 -0
  21. data/lib/helios/frontend/images/in-app-purchase.png +0 -0
  22. data/lib/helios/frontend/images/in-app-purchase.svg +1 -0
  23. data/lib/helios/frontend/images/passbook.png +0 -0
  24. data/lib/helios/frontend/images/passbook.svg +1 -0
  25. data/lib/helios/frontend/images/push-notification.png +0 -0
  26. data/lib/helios/frontend/images/push-notification.svg +1 -0
  27. data/lib/helios/frontend/javascripts/foundation/foundation.alerts.js +50 -0
  28. data/lib/helios/frontend/javascripts/foundation/foundation.clearing.js +478 -0
  29. data/lib/helios/frontend/javascripts/foundation/foundation.cookie.js +74 -0
  30. data/lib/helios/frontend/javascripts/foundation/foundation.dropdown.js +122 -0
  31. data/lib/helios/frontend/javascripts/foundation/foundation.forms.js +403 -0
  32. data/lib/helios/frontend/javascripts/foundation/foundation.joyride.js +613 -0
  33. data/lib/helios/frontend/javascripts/foundation/foundation.js +331 -0
  34. data/lib/helios/frontend/javascripts/foundation/foundation.magellan.js +130 -0
  35. data/lib/helios/frontend/javascripts/foundation/foundation.orbit.js +355 -0
  36. data/lib/helios/frontend/javascripts/foundation/foundation.placeholder.js +159 -0
  37. data/lib/helios/frontend/javascripts/foundation/foundation.reveal.js +272 -0
  38. data/lib/helios/frontend/javascripts/foundation/foundation.section.js +183 -0
  39. data/lib/helios/frontend/javascripts/foundation/foundation.tooltips.js +195 -0
  40. data/lib/helios/frontend/javascripts/foundation/foundation.topbar.js +208 -0
  41. data/lib/helios/frontend/javascripts/helios.coffee +48 -0
  42. data/lib/helios/frontend/javascripts/helios/collections.coffee +30 -0
  43. data/lib/helios/frontend/javascripts/helios/models.coffee +23 -0
  44. data/lib/helios/frontend/javascripts/helios/router.coffee +52 -0
  45. data/lib/helios/frontend/javascripts/helios/views.coffee +92 -0
  46. data/lib/helios/frontend/javascripts/vendor/backbone.datagrid.js +662 -0
  47. data/lib/helios/frontend/javascripts/vendor/backbone.js +1487 -0
  48. data/lib/helios/frontend/javascripts/vendor/jquery.js +9597 -0
  49. data/lib/helios/frontend/javascripts/vendor/underscore.js +1227 -0
  50. data/lib/helios/frontend/stylesheets/_settings.scss +988 -0
  51. data/lib/helios/frontend/stylesheets/screen.sass +98 -0
  52. data/lib/helios/frontend/templates/data/entities.hbs +7 -0
  53. data/lib/helios/frontend/templates/data/entity.hbs +17 -0
  54. data/lib/helios/frontend/templates/in-app-purchase/receipt.hbs +53 -0
  55. data/lib/helios/frontend/templates/in-app-purchase/receipts.hbs +39 -0
  56. data/lib/helios/frontend/templates/passbook/passes.hbs +25 -0
  57. data/lib/helios/frontend/templates/push-notification/device.hbs +35 -0
  58. data/lib/helios/frontend/templates/push-notification/devices.hbs +37 -0
  59. data/lib/helios/frontend/views/devices.jst.tpl +3 -0
  60. data/lib/helios/frontend/views/entities.jst.tpl +9 -0
  61. data/lib/helios/frontend/views/index.haml +30 -0
  62. data/lib/helios/frontend/views/passes.jst.tpl +3 -0
  63. data/lib/helios/frontend/views/receipts.jst.tpl +3 -0
  64. data/lib/helios/templates/Gemfile.erb +7 -0
  65. data/lib/helios/templates/Procfile.erb +1 -0
  66. data/lib/helios/templates/README.md.erb +9 -0
  67. data/lib/helios/templates/config.ru.erb +6 -0
  68. data/lib/helios/version.rb +3 -0
  69. metadata +199 -26
data/Gemfile.lock CHANGED
@@ -1,86 +1,123 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- helios (0.0.1)
4
+ helios (0.0.2)
5
+ coffee-script (~> 2.2)
5
6
  commander (~> 4.1.2)
6
- json (~> 1.7.3)
7
- rack-core-data (~> 0.1.0)
8
- rack-passbook (~> 0.0.1)
9
- rack-push-notification (~> 0.1.0)
7
+ compass (~> 0.12)
8
+ haml (~> 3.1)
9
+ json (~> 1.7)
10
+ rack-core-data (~> 0.2)
11
+ rack-in-app-purchase (~> 0.0.2)
12
+ rack-passbook (~> 0.0.2)
13
+ rack-push-notification (~> 0.2)
10
14
  rack-smart-app-banner (~> 0.0.1)
15
+ sinatra (~> 1.3)
16
+ sinatra-assetpack (~> 0.1)
17
+ sinatra-backbone (~> 0.1.0.rc2)
18
+ sinatra-param (~> 0.1)
19
+ sinatra-support (~> 1.2)
20
+ zurb-foundation (~> 4.0)
11
21
 
12
22
  GEM
13
23
  remote: http://rubygems.org/
14
24
  specs:
15
- activesupport (3.2.11)
25
+ activesupport (3.2.12)
16
26
  i18n (~> 0.6)
17
27
  multi_json (~> 1.0)
18
28
  bootstrap-sass (2.1.1.0)
29
+ chunky_png (1.2.7)
19
30
  coffee-script (2.2.0)
20
31
  coffee-script-source
21
32
  execjs
22
- coffee-script-source (1.4.0)
33
+ coffee-script-source (1.6.1)
23
34
  commander (4.1.3)
24
35
  highline (~> 1.6.11)
36
+ compass (0.12.2)
37
+ chunky_png (~> 1.2)
38
+ fssm (>= 0.2.7)
39
+ sass (~> 3.1)
25
40
  eco (1.0.0)
26
41
  coffee-script
27
42
  eco-source
28
43
  execjs
29
44
  eco-source (1.1.0.rc.1)
45
+ excon (0.17.0)
30
46
  execjs (1.4.0)
31
47
  multi_json (~> 1.0)
32
- haml (3.1.7)
48
+ fssm (0.2.10)
49
+ haml (3.1.8)
33
50
  highline (1.6.15)
34
51
  hike (1.2.1)
35
52
  houston (0.1.1)
36
53
  commander (~> 4.1.2)
37
54
  json (~> 1.7.3)
38
- i18n (0.6.1)
39
- json (1.7.6)
40
- multi_json (1.5.0)
55
+ i18n (0.6.4)
56
+ jsmin (1.0.1)
57
+ json (1.7.7)
58
+ multi_json (1.6.1)
41
59
  nokogiri (1.5.6)
42
- rack (1.4.3)
60
+ rack (1.5.2)
43
61
  rack-contrib (1.1.0)
44
62
  rack (>= 0.9.1)
45
- rack-core-data (0.1.0)
63
+ rack-core-data (0.2.0)
46
64
  activesupport (~> 3.2.6)
47
65
  nokogiri (~> 1.4)
48
66
  rack (~> 1.4)
67
+ rack-contrib (~> 1.1.0)
49
68
  sequel (~> 3.37.0)
50
69
  sinatra (~> 1.3.2)
51
- rack-passbook (0.0.1)
70
+ sinatra-param (~> 0.1.1)
71
+ rack-in-app-purchase (0.0.2)
52
72
  rack (~> 1.4)
53
- sequel (~> 3.37.0)
54
- sinatra (~> 1.3.2)
55
- rack-protection (1.3.2)
73
+ sequel (~> 3.37)
74
+ sinatra (~> 1.3)
75
+ venice
76
+ rack-passbook (0.0.3)
77
+ rack (~> 1.4)
78
+ sequel (~> 3.37)
79
+ sinatra (~> 1.3)
80
+ rack-protection (1.4.0)
56
81
  rack
57
- rack-push-notification (0.1.0)
58
- bootstrap-sass (~> 2.1.1)
59
- coffee-script (~> 2.2.0)
60
- eco (~> 1.0.0)
61
- haml (~> 3.1.7)
82
+ rack-push-notification (0.2.0)
83
+ bootstrap-sass (~> 2.1.0)
84
+ coffee-script (~> 2.2)
85
+ compass (~> 0.11)
86
+ eco (~> 1.0)
87
+ haml (~> 3.1)
62
88
  houston (~> 0.1.1)
63
89
  rack (~> 1.4)
64
- rack-contrib (~> 1.1.0)
65
- sass (~> 3.2.3)
66
- sequel (~> 3.37.0)
90
+ rack-contrib (~> 1.1)
91
+ sass (~> 3.2)
92
+ sequel (~> 3.37)
67
93
  sinatra (~> 1.3.2)
68
- sinatra-param (~> 0.1.1)
69
- sprockets (~> 2.8.1)
70
- sprockets-sass (~> 0.9.1)
94
+ sinatra-param (~> 0.1)
95
+ sprockets (~> 2.8)
96
+ sprockets-sass (~> 0.9)
71
97
  rack-smart-app-banner (0.0.1)
72
98
  rack (>= 1.2.0, <= 2.0.0)
99
+ rack-test (0.6.2)
100
+ rack (>= 1.0)
73
101
  rake (0.9.6)
74
102
  rspec (0.6.4)
75
- sass (3.2.5)
103
+ sass (3.2.7)
76
104
  sequel (3.37.0)
77
- sinatra (1.3.3)
78
- rack (~> 1.3, >= 1.3.6)
79
- rack-protection (~> 1.2)
105
+ sinatra (1.3.5)
106
+ rack (~> 1.4)
107
+ rack-protection (~> 1.3)
80
108
  tilt (~> 1.3, >= 1.3.3)
81
- sinatra-param (0.1.1)
109
+ sinatra-assetpack (0.1.7)
110
+ jsmin
111
+ rack-test
112
+ sinatra
113
+ tilt (>= 1.3.0)
114
+ sinatra-backbone (0.1.0.rc2)
115
+ sinatra
116
+ sinatra-param (0.1.2)
82
117
  sinatra (~> 1.3)
83
- sprockets (2.8.2)
118
+ sinatra-support (1.2.2)
119
+ sinatra (>= 1.0)
120
+ sprockets (2.9.0)
84
121
  hike (~> 1.2)
85
122
  multi_json (~> 1.0)
86
123
  rack (~> 1.0)
@@ -88,12 +125,20 @@ GEM
88
125
  sprockets-sass (0.9.1)
89
126
  sprockets (~> 2.0)
90
127
  tilt (~> 1.1)
91
- tilt (1.3.3)
128
+ terminal-table (1.4.5)
129
+ tilt (1.3.5)
130
+ venice (0.0.1)
131
+ commander (~> 4.1.2)
132
+ excon (~> 0.17.0)
133
+ json (~> 1.7.3)
134
+ terminal-table (~> 1.4.5)
135
+ zurb-foundation (4.0.5)
136
+ sass (>= 3.2.0)
92
137
 
93
138
  PLATFORMS
94
139
  ruby
95
140
 
96
141
  DEPENDENCIES
97
142
  helios!
98
- rake (~> 0.9.2)
99
- rspec (~> 0.6.1)
143
+ rake (~> 0.9)
144
+ rspec (~> 0.6)
data/README.md CHANGED
@@ -3,6 +3,22 @@
3
3
 
4
4
  ---
5
5
 
6
+ // TODO
7
+
8
+ - Usage
9
+ - By itself / Rack / Sinatra
10
+ - With Rails
11
+ - Explicitly documenting formats of models, what tables they reside in / depend on, how to override them, etc.
12
+ - Deploying Helios to Heroku
13
+ - When and How to migrate off of Helios
14
+ - Who is Helios for
15
+ - How to install helios
16
+ - gem install
17
+ - Gemfile
18
+ - CLI usage
19
+ - How to incorporate it into your iOS project
20
+
21
+
6
22
  ## Contact
7
23
 
8
24
  Mattt Thompson
data/bin/helios CHANGED
@@ -4,6 +4,8 @@ require 'commander/import'
4
4
 
5
5
  require 'helios'
6
6
 
7
+ $:.unshift File.join(File.dirname(__FILE__), '../lib')
8
+
7
9
  HighLine.track_eof = false # Fix for built-in Ruby
8
10
  Signal.trap("INT") {} # Suppress backtrace when exiting command
9
11
 
@@ -15,3 +17,5 @@ program :help, 'Website', 'https://github.com/mattt'
15
17
  program :help_formatter, :compact
16
18
 
17
19
  default_command :help
20
+
21
+ require 'helios/commands'
data/example/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem 'helios', path: File.join(__FILE__, "../..")
4
+
5
+ gem 'pg'
6
+
7
+ gem 'thin', '~>1.4.1'
@@ -0,0 +1,149 @@
1
+ PATH
2
+ remote: /Users/mattt/Code/Ruby/helios
3
+ specs:
4
+ helios (0.0.1)
5
+ coffee-script (~> 2.2)
6
+ commander (~> 4.1.2)
7
+ compass (~> 0.12)
8
+ haml (~> 3.1)
9
+ json (~> 1.7)
10
+ rack-core-data (~> 0.2)
11
+ rack-in-app-purchase (~> 0.0.2)
12
+ rack-passbook (~> 0.0.2)
13
+ rack-push-notification (~> 0.2)
14
+ rack-smart-app-banner (~> 0.0.1)
15
+ sinatra (~> 1.3)
16
+ sinatra-assetpack (~> 0.1)
17
+ sinatra-backbone (~> 0.1.0.rc2)
18
+ sinatra-param (~> 0.1)
19
+ sinatra-support (~> 1.2)
20
+ zurb-foundation (~> 4.0)
21
+
22
+ GEM
23
+ remote: https://rubygems.org/
24
+ specs:
25
+ activesupport (3.2.12)
26
+ i18n (~> 0.6)
27
+ multi_json (~> 1.0)
28
+ bootstrap-sass (2.1.1.0)
29
+ chunky_png (1.2.7)
30
+ coffee-script (2.2.0)
31
+ coffee-script-source
32
+ execjs
33
+ coffee-script-source (1.6.1)
34
+ commander (4.1.3)
35
+ highline (~> 1.6.11)
36
+ compass (0.12.2)
37
+ chunky_png (~> 1.2)
38
+ fssm (>= 0.2.7)
39
+ sass (~> 3.1)
40
+ daemons (1.1.9)
41
+ eco (1.0.0)
42
+ coffee-script
43
+ eco-source
44
+ execjs
45
+ eco-source (1.1.0.rc.1)
46
+ eventmachine (1.0.1)
47
+ excon (0.17.0)
48
+ execjs (1.4.0)
49
+ multi_json (~> 1.0)
50
+ fssm (0.2.10)
51
+ haml (3.1.8)
52
+ highline (1.6.15)
53
+ hike (1.2.1)
54
+ houston (0.1.1)
55
+ commander (~> 4.1.2)
56
+ json (~> 1.7.3)
57
+ i18n (0.6.4)
58
+ jsmin (1.0.1)
59
+ json (1.7.7)
60
+ multi_json (1.6.1)
61
+ nokogiri (1.5.6)
62
+ pg (0.14.1)
63
+ rack (1.5.2)
64
+ rack-contrib (1.1.0)
65
+ rack (>= 0.9.1)
66
+ rack-core-data (0.2.0)
67
+ activesupport (~> 3.2.6)
68
+ nokogiri (~> 1.4)
69
+ rack (~> 1.4)
70
+ rack-contrib (~> 1.1.0)
71
+ sequel (~> 3.37.0)
72
+ sinatra (~> 1.3.2)
73
+ sinatra-param (~> 0.1.1)
74
+ rack-in-app-purchase (0.0.2)
75
+ rack (~> 1.4)
76
+ sequel (~> 3.37)
77
+ sinatra (~> 1.3)
78
+ venice
79
+ rack-passbook (0.0.3)
80
+ rack (~> 1.4)
81
+ sequel (~> 3.37)
82
+ sinatra (~> 1.3)
83
+ rack-protection (1.4.0)
84
+ rack
85
+ rack-push-notification (0.2.0)
86
+ bootstrap-sass (~> 2.1.0)
87
+ coffee-script (~> 2.2)
88
+ compass (~> 0.11)
89
+ eco (~> 1.0)
90
+ haml (~> 3.1)
91
+ houston (~> 0.1.1)
92
+ rack (~> 1.4)
93
+ rack-contrib (~> 1.1)
94
+ sass (~> 3.2)
95
+ sequel (~> 3.37)
96
+ sinatra (~> 1.3.2)
97
+ sinatra-param (~> 0.1)
98
+ sprockets (~> 2.8)
99
+ sprockets-sass (~> 0.9)
100
+ rack-smart-app-banner (0.0.1)
101
+ rack (>= 1.2.0, <= 2.0.0)
102
+ rack-test (0.6.2)
103
+ rack (>= 1.0)
104
+ sass (3.2.7)
105
+ sequel (3.37.0)
106
+ sinatra (1.3.5)
107
+ rack (~> 1.4)
108
+ rack-protection (~> 1.3)
109
+ tilt (~> 1.3, >= 1.3.3)
110
+ sinatra-assetpack (0.1.7)
111
+ jsmin
112
+ rack-test
113
+ sinatra
114
+ tilt (>= 1.3.0)
115
+ sinatra-backbone (0.1.0.rc2)
116
+ sinatra
117
+ sinatra-param (0.1.2)
118
+ sinatra (~> 1.3)
119
+ sinatra-support (1.2.2)
120
+ sinatra (>= 1.0)
121
+ sprockets (2.9.0)
122
+ hike (~> 1.2)
123
+ multi_json (~> 1.0)
124
+ rack (~> 1.0)
125
+ tilt (~> 1.1, != 1.3.0)
126
+ sprockets-sass (0.9.1)
127
+ sprockets (~> 2.0)
128
+ tilt (~> 1.1)
129
+ terminal-table (1.4.5)
130
+ thin (1.4.1)
131
+ daemons (>= 1.0.9)
132
+ eventmachine (>= 0.12.6)
133
+ rack (>= 1.0.0)
134
+ tilt (1.3.5)
135
+ venice (0.0.1)
136
+ commander (~> 4.1.2)
137
+ excon (~> 0.17.0)
138
+ json (~> 1.7.3)
139
+ terminal-table (~> 1.4.5)
140
+ zurb-foundation (4.0.5)
141
+ sass (>= 3.2.0)
142
+
143
+ PLATFORMS
144
+ ruby
145
+
146
+ DEPENDENCIES
147
+ helios!
148
+ pg
149
+ thin (~> 1.4.1)
data/example/Procfile ADDED
@@ -0,0 +1 @@
1
+ web: bundle exec thin start -p $PORT -D -V
@@ -0,0 +1,23 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
+ <model name="" userDefinedModelVersionIdentifier="" type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="1811" systemVersion="12C60" minimumToolsVersion="Automatic" macOSVersion="Automatic" iOSVersion="Automatic">
3
+ <entity name="Customer" syncable="YES">
4
+ <attribute name="active" optional="YES" attributeType="Boolean" syncable="YES"/>
5
+ <attribute name="email" optional="YES" attributeType="String" syncable="YES"/>
6
+ <attribute name="first_name" optional="YES" attributeType="String" syncable="YES"/>
7
+ <attribute name="last_name" optional="YES" attributeType="String" syncable="YES"/>
8
+ <attribute name="last_update" optional="YES" attributeType="Date" syncable="YES"/>
9
+ </entity>
10
+ <entity name="Film">
11
+ <attribute name="description" optional="YES" attributeType="String" syncable="YES"/>
12
+ <attribute name="last_update" optional="YES" attributeType="Date" syncable="YES"/>
13
+ <attribute name="length" optional="YES" attributeType="Integer 16" defaultValueString="0" syncable="YES"/>
14
+ <attribute name="rating" optional="YES" attributeType="String" syncable="YES"/>
15
+ <attribute name="releaseYear" optional="YES" attributeType="Integer 16" defaultValueString="0" syncable="YES"/>
16
+ <attribute name="title" optional="YES" attributeType="String" syncable="YES"/>
17
+ <userInfo/>
18
+ </entity>
19
+ <elements>
20
+ <element name="Film" positionX="261" positionY="189" width="128" height="135"/>
21
+ <element name="Customer" positionX="160" positionY="192" width="128" height="120"/>
22
+ </elements>
23
+ </model>
data/example/config.ru ADDED
@@ -0,0 +1,6 @@
1
+ require 'bundler'
2
+ Bundler.require
3
+
4
+ DB = Sequel.connect(ENV['DATABASE_URL'])
5
+
6
+ run Helios::Application.new(model: 'Sample.xcdatamodeld')
data/helios.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  $:.push File.expand_path("../lib", __FILE__)
3
- require "helios"
3
+ require "helios/version"
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "helios"
@@ -13,14 +13,24 @@ Gem::Specification.new do |s|
13
13
  s.description = "Coming Soon"
14
14
 
15
15
  s.add_dependency "commander", "~> 4.1.2"
16
- s.add_dependency "rack-core-data", "~> 0.1.0"
17
- s.add_dependency "rack-push-notification", "~> 0.1.0"
18
- s.add_dependency "rack-passbook", "~> 0.0.1"
16
+ s.add_dependency "rack-core-data", "~> 0.2"
17
+ s.add_dependency "rack-push-notification", "~> 0.2"
18
+ s.add_dependency "rack-in-app-purchase", "~> 0.0.2"
19
+ s.add_dependency "rack-passbook", "~> 0.0.2"
19
20
  s.add_dependency "rack-smart-app-banner", "~> 0.0.1"
20
- s.add_dependency "json", "~> 1.7.3"
21
+ s.add_dependency "json", "~> 1.7"
22
+ s.add_dependency "coffee-script", "~> 2.2"
23
+ s.add_dependency "sinatra", "~> 1.3"
24
+ s.add_dependency "sinatra-assetpack", "~> 0.1"
25
+ s.add_dependency "sinatra-backbone", "~> 0.1.0.rc2"
26
+ s.add_dependency "sinatra-param", "~> 0.1"
27
+ s.add_dependency "sinatra-support", "~> 1.2"
28
+ s.add_dependency "haml", "~> 3.1"
29
+ s.add_dependency "compass", "~> 0.12"
30
+ s.add_dependency "zurb-foundation", "~> 4.0"
21
31
 
22
- s.add_development_dependency "rspec", "~> 0.6.1"
23
- s.add_development_dependency "rake", "~> 0.9.2"
32
+ s.add_development_dependency "rspec", "~> 0.6"
33
+ s.add_development_dependency "rake", "~> 0.9"
24
34
 
25
35
  s.files = Dir["./**/*"].reject { |file| file =~ /\.\/(bin|log|pkg|script|spec|test|vendor)/ }
26
36
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")