astro 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. data/.gitignore +17 -0
  2. data/.rspec +2 -0
  3. data/Gemfile +4 -0
  4. data/Gemfile.lock +88 -0
  5. data/Guardfile +6 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +16 -0
  8. data/Rakefile +6 -0
  9. data/app/assets/javascripts/jquery.js +9807 -0
  10. data/app/assets/javascripts/sammy.js +2137 -0
  11. data/app/assets/javascripts/underscore.js +1227 -0
  12. data/astro.gemspec +32 -0
  13. data/config.ru +4 -0
  14. data/lib/assets/javascripts/astro.js +11 -0
  15. data/lib/astro/assets.rb +57 -0
  16. data/lib/astro/middleware/query_string.rb +23 -0
  17. data/lib/astro/middleware/sprockets.rb +25 -0
  18. data/lib/astro/server.rb +30 -0
  19. data/lib/astro/version.rb +3 -0
  20. data/lib/astro/views/error.erb +4 -0
  21. data/lib/astro.rb +11 -0
  22. data/spec/assets/javascripts/bar.js +3 -0
  23. data/spec/assets/javascripts/foo.js +1 -0
  24. data/spec/astro/middleware/query_string_spec.rb +27 -0
  25. data/spec/astro/middleware/sprockets_spec.rb +22 -0
  26. data/spec/astro/server_spec/astro_server/javascripts/bar/body.js +3 -0
  27. data/spec/astro/server_spec/astro_server/javascripts/bar/headers.txt +5 -0
  28. data/spec/astro/server_spec/astro_server/javascripts/baz/body.js +4 -0
  29. data/spec/astro/server_spec/astro_server/javascripts/baz/headers.txt +5 -0
  30. data/spec/astro/server_spec/astro_server/javascripts/empty/body.js +11 -0
  31. data/spec/astro/server_spec/astro_server/javascripts/empty/headers.txt +5 -0
  32. data/spec/astro/server_spec/astro_server/javascripts/foo/body.js +1 -0
  33. data/spec/astro/server_spec/astro_server/javascripts/foo/headers.txt +5 -0
  34. data/spec/astro/server_spec.rb +42 -0
  35. data/spec/spec_helper.rb +19 -0
  36. data/spec/support/approvals.rb +1 -0
  37. data/spec/support/pry.rb +1 -0
  38. metadata +260 -0
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format progress
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in astro.gemspec
4
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,88 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ astro (0.1.1)
5
+ sinatra (~> 1.4.3)
6
+ sprockets (~> 2.10.0)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ awesome_print (1.1.0)
12
+ coderay (1.0.9)
13
+ diff-lcs (1.2.4)
14
+ execjs (1.4.0)
15
+ multi_json (~> 1.0)
16
+ ffi (1.8.1)
17
+ formatador (0.2.4)
18
+ git-approvals (0.2.2)
19
+ awesome_print (= 1.1.0)
20
+ guard (1.8.0)
21
+ formatador (>= 0.2.4)
22
+ listen (>= 1.0.0)
23
+ lumberjack (>= 1.0.2)
24
+ pry (>= 0.9.10)
25
+ thor (>= 0.14.6)
26
+ guard-rspec (3.0.1)
27
+ guard (>= 1.8)
28
+ rspec (~> 2.13)
29
+ hike (1.2.3)
30
+ listen (1.1.6)
31
+ rb-fsevent (>= 0.9.3)
32
+ rb-inotify (>= 0.9)
33
+ rb-kqueue (>= 0.2)
34
+ lumberjack (1.0.3)
35
+ method_source (0.8.1)
36
+ multi_json (1.7.6)
37
+ pry (0.9.12.2)
38
+ coderay (~> 1.0.5)
39
+ method_source (~> 0.8)
40
+ slop (~> 3.4)
41
+ rack (1.5.2)
42
+ rack-protection (1.5.0)
43
+ rack
44
+ rack-test (0.6.2)
45
+ rack (>= 1.0)
46
+ rake (10.0.4)
47
+ rb-fsevent (0.9.3)
48
+ rb-inotify (0.9.0)
49
+ ffi (>= 0.5.0)
50
+ rb-kqueue (0.2.0)
51
+ ffi (>= 0.5.0)
52
+ rspec (2.13.0)
53
+ rspec-core (~> 2.13.0)
54
+ rspec-expectations (~> 2.13.0)
55
+ rspec-mocks (~> 2.13.0)
56
+ rspec-core (2.13.1)
57
+ rspec-expectations (2.13.0)
58
+ diff-lcs (>= 1.1.3, < 2.0)
59
+ rspec-mocks (2.13.1)
60
+ sinatra (1.4.3)
61
+ rack (~> 1.4)
62
+ rack-protection (~> 1.4)
63
+ tilt (~> 1.3, >= 1.3.4)
64
+ slop (3.4.5)
65
+ sprockets (2.10.0)
66
+ hike (~> 1.2)
67
+ multi_json (~> 1.0)
68
+ rack (~> 1.0)
69
+ tilt (~> 1.1, != 1.3.0)
70
+ thor (0.18.1)
71
+ tilt (1.4.1)
72
+ uglifier (2.1.1)
73
+ execjs (>= 0.3.0)
74
+ multi_json (~> 1.0, >= 1.0.2)
75
+
76
+ PLATFORMS
77
+ ruby
78
+
79
+ DEPENDENCIES
80
+ astro!
81
+ bundler (~> 1.3)
82
+ git-approvals (~> 0.2.2)
83
+ guard-rspec (~> 3.0.1)
84
+ pry (~> 0.9.12.2)
85
+ rack-test (~> 0.6.2)
86
+ rake
87
+ rspec (~> 2.13.0)
88
+ uglifier (~> 2.1.1)
data/Guardfile ADDED
@@ -0,0 +1,6 @@
1
+ guard :rspec do
2
+ watch( %r{^spec/.+_spec\.rb$} )
3
+ watch( %r{^lib/(.+)\.rb$} ){ |m| "spec/#{m[1]}_spec.rb" }
4
+ watch( 'spec/spec_helper.rb' ){ 'spec' }
5
+ watch( 'Gemfile.lock' ){ 'spec' }
6
+ end
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 Jeremy Ruppel
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,16 @@
1
+ # Astro.js
2
+
3
+ Astro is your DIY asset distribution web service.
4
+
5
+ ## TODOs
6
+
7
+ - Asset versioning.
8
+ - Remove module loader code from scripts?
9
+ - Minify javascript?
10
+ - Cache!
11
+ - Docs!
12
+ - Collect shit tons of assets.
13
+ - Similar endpoint for stylesheets.
14
+ - Deploy to heroku.
15
+ - Release on rubygems.
16
+ - Make sure astro can be mounted within a rails app.
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+
4
+ RSpec::Core::RakeTask.new :spec
5
+
6
+ task :default => :spec