appril-cli 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +3 -0
  3. data/Rakefile +1 -0
  4. data/appril-cli.gemspec +19 -0
  5. data/bin/appril +4 -0
  6. data/boilerplate/app/.gitignore +6 -0
  7. data/boilerplate/app/.pryrc +1 -0
  8. data/boilerplate/app/Gemfile +6 -0
  9. data/boilerplate/app/Rakefile +1 -0
  10. data/boilerplate/app/base/api/base_controller.rb +21 -0
  11. data/boilerplate/app/base/api/index/client.coffee +4 -0
  12. data/boilerplate/app/base/api/index/layout.html +3 -0
  13. data/boilerplate/app/base/api/index/server.rb +3 -0
  14. data/boilerplate/app/base/api/rtcp_controller.rb +22 -0
  15. data/boilerplate/app/base/assets/styles.css +0 -0
  16. data/boilerplate/app/base/boot.rb +2 -0
  17. data/boilerplate/app/base/core.coffee +143 -0
  18. data/boilerplate/app/base/helpers/application_helpers.coffee +1 -0
  19. data/boilerplate/app/base/helpers/application_helpers.rb +4 -0
  20. data/boilerplate/app/base/load.rb +0 -0
  21. data/boilerplate/app/base/models/base_model.rb +0 -0
  22. data/boilerplate/app/base/templates/access_denied.html +3 -0
  23. data/boilerplate/app/base/templates/layout.liquid +11 -0
  24. data/boilerplate/app/base/templates/layouts/main.html +1 -0
  25. data/boilerplate/app/base/templates/layouts/none.html +1 -0
  26. data/boilerplate/app/config/config.rb +9 -0
  27. data/boilerplate/app/config/config.yml +18 -0
  28. data/boilerplate/app/config/env/development.yml +0 -0
  29. data/boilerplate/app/config/env/production.yml +0 -0
  30. data/boilerplate/app/config/env/stage.yml +0 -0
  31. data/boilerplate/app/config/env/test.yml +0 -0
  32. data/boilerplate/app/config.ru +3 -0
  33. data/boilerplate/app/core/Gemfile +4 -0
  34. data/boilerplate/app/core/boot.rb +16 -0
  35. data/boilerplate/app/core/generate_configs.rb +125 -0
  36. data/boilerplate/app/core/load.rb +14 -0
  37. data/boilerplate/app/core/load_controllers.rb +14 -0
  38. data/boilerplate/app/generators/api/client.coffee +4 -0
  39. data/boilerplate/app/generators/api/layout.html +0 -0
  40. data/boilerplate/app/generators/api/server.rb +3 -0
  41. data/boilerplate/app/package.json +10 -0
  42. data/boilerplate/app/public/.ignore +0 -0
  43. data/boilerplate/app/tmp/.ignore +0 -0
  44. data/boilerplate/app/var/.ignore +0 -0
  45. data/boilerplate/app/webpack.config.js +53 -0
  46. data/boilerplate/crudle/Gemfile +7 -0
  47. data/boilerplate/crudle/base/core.coffee +128 -0
  48. data/boilerplate/crudle/base/templates/menu.html +3 -0
  49. data/boilerplate/crudle/generators/api/client.coffee +11 -0
  50. data/boilerplate/crudle/generators/api/editor.html +0 -0
  51. data/boilerplate/crudle/generators/api/server.rb +26 -0
  52. data/boilerplate/crudle/package.json +15 -0
  53. data/boilerplate/crudle/webpack.config.js +54 -0
  54. data/docker/Dockerfile +5 -0
  55. data/docker/run +66 -0
  56. data/docker/skel/build.sh +1 -0
  57. data/docker/skel/cleanup.sh +7 -0
  58. data/docker/skel/config.yml +24 -0
  59. data/docker/skel/prepare_build.sh +5 -0
  60. data/docker/skel/start.sh +1 -0
  61. data/docker/start +7 -0
  62. data/lib/appril-cli/app/install.rb +46 -0
  63. data/lib/appril-cli/app/update.rb +27 -0
  64. data/lib/appril-cli/app.rb +46 -0
  65. data/lib/appril-cli/assertions.rb +60 -0
  66. data/lib/appril-cli/docker/build.rb +152 -0
  67. data/lib/appril-cli/docker/install.rb +23 -0
  68. data/lib/appril-cli/docker/update.rb +26 -0
  69. data/lib/appril-cli/docker.rb +61 -0
  70. data/lib/appril-cli/generator/api.rb +16 -0
  71. data/lib/appril-cli/generator.rb +32 -0
  72. data/lib/appril-cli/helpers.rb +47 -0
  73. data/lib/appril-cli/version.rb +5 -0
  74. data/lib/appril-cli.rb +102 -0
  75. data/sandbox/.gitignore +6 -0
  76. data/sandbox/.pryrc +1 -0
  77. data/sandbox/Gemfile +7 -0
  78. data/sandbox/Rakefile +1 -0
  79. data/sandbox/base/api/base_controller.rb +21 -0
  80. data/sandbox/base/api/index/client.coffee +4 -0
  81. data/sandbox/base/api/index/layout.html +3 -0
  82. data/sandbox/base/api/index/server.rb +3 -0
  83. data/sandbox/base/api/rtcp_controller.rb +22 -0
  84. data/sandbox/base/assets/styles.css +0 -0
  85. data/sandbox/base/boot.rb +2 -0
  86. data/sandbox/base/core.coffee +128 -0
  87. data/sandbox/base/helpers/application_helpers.coffee +1 -0
  88. data/sandbox/base/helpers/application_helpers.rb +4 -0
  89. data/sandbox/base/load.rb +0 -0
  90. data/sandbox/base/models/base_model.rb +0 -0
  91. data/sandbox/base/templates/access_denied.html +3 -0
  92. data/sandbox/base/templates/layout.liquid +11 -0
  93. data/sandbox/base/templates/layouts/main.html +1 -0
  94. data/sandbox/base/templates/layouts/none.html +1 -0
  95. data/sandbox/base/templates/menu.html +3 -0
  96. data/sandbox/config/config.rb +9 -0
  97. data/sandbox/config/config.yml +18 -0
  98. data/sandbox/config/env/development.yml +0 -0
  99. data/sandbox/config/env/production.yml +0 -0
  100. data/sandbox/config/env/stage.yml +0 -0
  101. data/sandbox/config/env/test.yml +0 -0
  102. data/sandbox/config.ru +3 -0
  103. data/sandbox/core/Gemfile +4 -0
  104. data/sandbox/core/boot.rb +16 -0
  105. data/sandbox/core/generate_configs.rb +125 -0
  106. data/sandbox/core/load.rb +14 -0
  107. data/sandbox/core/load_controllers.rb +14 -0
  108. data/sandbox/generators/api/client.coffee +11 -0
  109. data/sandbox/generators/api/editor.html +0 -0
  110. data/sandbox/generators/api/layout.html +0 -0
  111. data/sandbox/generators/api/server.rb +26 -0
  112. data/sandbox/package.json +15 -0
  113. data/sandbox/webpack.config.js +54 -0
  114. metadata +157 -0
@@ -0,0 +1,4 @@
1
+ # this file will be loaded before other files found in helpers/ folder
2
+ module Helpers
3
+
4
+ end
File without changes
File without changes
@@ -0,0 +1,3 @@
1
+ <h4>
2
+ Please authorize to view this page
3
+ </h4>
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
6
+ <script type="text/javascript">window.module = {}</script>
7
+ <script src="{{client_url}}/core.js"></script>
8
+ <link rel="stylesheet" href="{{client_url}}/core.css">
9
+ </head>
10
+ <body></body>
11
+ </html>
@@ -0,0 +1 @@
1
+ <div id="content"></div>
@@ -0,0 +1 @@
1
+ <div id="content"></div>
@@ -0,0 +1,3 @@
1
+ <a href="{{App.X.url}}" class="nav-item nav-link {{ url == App.X.url ? 'active' : '' }}">
2
+ X
3
+ </a>
@@ -0,0 +1,9 @@
1
+
2
+ # loading .yml configs from current directory. config.yml will be loaded first.
3
+ Cfg = Appril.load_config(File.expand_path('..', __FILE__))
4
+
5
+ # it is highly recommended to freeze configs so they stay unaltered on runtime.
6
+ Cfg.freeze
7
+
8
+ # loading any .rb files in current dir. this one will be skipped automatically.
9
+ Dir[File.expand_path('../**/*.rb', __FILE__)].each {|f| require(f)}
@@ -0,0 +1,18 @@
1
+
2
+ # configs here will be the same on all environments.
3
+ # if some configs differs on some environment,
4
+ # put them into appropriate env/[ENVIRONMENT].yml file
5
+
6
+ # multiple .yml files allowed in config folder.
7
+ # for example config/db.yml file will be loaded into Cfg.db in server app.
8
+ # arbitrary .yml files can have environment related configs.
9
+
10
+
11
+ # base URL for server app
12
+ server_url: /
13
+
14
+ # base URL for compiled client app
15
+ client_url: /app
16
+
17
+ # where webpack should install compiled app. relative to webpack.config.js
18
+ client_path: ./public
File without changes
File without changes
File without changes
File without changes
data/sandbox/config.ru ADDED
@@ -0,0 +1,3 @@
1
+ require File.expand_path('../core/load', __FILE__)
2
+
3
+ run RocketIO::Application.new
@@ -0,0 +1,4 @@
1
+ # do NOT edit this file, edit ../Gemfile instead
2
+ gem 'appril'
3
+ gem 'rocketio', '~> 0.0.8'
4
+ gem 'tubesock'
@@ -0,0 +1,16 @@
1
+ # do NOT edit this file, edit base/boot.rb instead
2
+
3
+ require 'yaml'
4
+
5
+ Dir.chdir File.expand_path('../..', __FILE__) do
6
+ require './base/boot'
7
+
8
+ require 'bundler/setup'
9
+ Bundler.require(:default)
10
+ Bundler.require(RocketIO.environment)
11
+
12
+ require './config/config'
13
+
14
+ require './base/helpers/application_helpers'
15
+ Dir['./base/helpers/**/*.rb'].each {|f| require(f)}
16
+ end
@@ -0,0 +1,125 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # do NOT edit this file
4
+
5
+ require File.expand_path('../load', __FILE__)
6
+
7
+ module ApprilTools
8
+ extend self
9
+
10
+ def load_config dir, env = RocketIO.environment
11
+
12
+ config = load_config_file("#{dir}/config.yml")
13
+ config.update(load_config_file("#{dir}/env/#{env}.yml"))
14
+ config[:environment] = env.to_s.freeze
15
+
16
+ Dir["#{dir}/**/*.yml"].each do |file|
17
+ next if File.dirname(file) == './env'
18
+
19
+ key = File.basename(file, '.yml')
20
+ next if key == 'config' || key == 'appril'
21
+
22
+ key_config = load_config_file(file)
23
+ key_config_keys = key_config.keys.map(&:to_s)
24
+
25
+ config[key] = if key_config_keys.include?(env.to_s)
26
+ # current environment found, use it
27
+ key_config[env]
28
+ else
29
+ if RocketIO::ENVIRONMENTS.keys.find {|k| key_config_keys.include?(k)}
30
+ # there are some environment(s), but no current one so set current environment to nil
31
+ nil
32
+ else
33
+ # there are no environments, so this config is available on any environment
34
+ key_config
35
+ end
36
+ end
37
+
38
+ end
39
+
40
+ def config.method_missing key
41
+ self[key]
42
+ end
43
+
44
+ config
45
+ end
46
+
47
+
48
+ def load_config_file file
49
+ RocketIO.indifferent_params(YAML.load(File.read(file)) || {})
50
+ end
51
+
52
+
53
+ def controllers_map dir
54
+ path_to_api = File.expand_path('base/api', dir)
55
+ RocketIO.controllers.each_with_object([]) do |controller,o|
56
+ next unless controller.superclass == ::BaseController
57
+
58
+ o << {
59
+ path: controller.dirname.sub(path_to_api, '').gsub(/\A\/|\/\Z/, ''),
60
+ url: controller.url,
61
+ url_pattern: url_pattern(controller),
62
+ name: controller.name.gsub('::', '__'),
63
+ api: controller.api
64
+ }
65
+ end.sort do |a,b|
66
+ b[:url].split('/').size <=> a[:url].split('/').size
67
+ end
68
+ end
69
+
70
+
71
+ def webpack_entries dir, controllers
72
+ entries = controllers.each_with_object({}) do |controller,o|
73
+
74
+ next unless entry = %w[
75
+ ./base/api/%s/client.js
76
+ ./base/api/%s/client.coffee
77
+ ].map {|p| p % controller[:path]}.find {|f| File.file?(File.expand_path(f, dir))}
78
+
79
+ o[controller[:path]] = File.join('./base/api', controller[:path], File.basename(entry))
80
+ end
81
+
82
+ if core = %w[
83
+ ./base/core.js
84
+ ./base/core.coffee
85
+ ].find {|f| File.file?(File.expand_path(f, dir))}
86
+ entries[:core] = core
87
+ end
88
+
89
+ entries
90
+ end
91
+
92
+
93
+ def generate_configs dir
94
+ config = load_config("#{dir}/config", :development)
95
+
96
+ controllers = controllers_map(dir)
97
+ webpack_entries = webpack_entries(dir, controllers)
98
+
99
+ File.open File.expand_path('config.json', dir), 'w' do |f|
100
+ f << JSON.pretty_generate({
101
+ controllers: controllers,
102
+ webpack: {
103
+ path: config[:client_path],
104
+ url: config[:client_url],
105
+ entries: webpack_entries
106
+ }
107
+ })
108
+ end
109
+ end
110
+
111
+ def url_pattern controller
112
+ controller.url *controller.instance_method(:get).parameters.each_with_object([]) {|param,o|
113
+ pattern = if param[0] == :rest
114
+ "*"
115
+ elsif param[0] == :req
116
+ ":#{param[1]}"
117
+ elsif param[0] == :opt
118
+ ":#{param[1]}?"
119
+ end
120
+ o << pattern if pattern
121
+ }
122
+ end
123
+ end
124
+
125
+ ApprilTools.generate_configs(File.expand_path('../..', __FILE__))
@@ -0,0 +1,14 @@
1
+ # do NOT edit this file, edit base/load.rb instead
2
+
3
+ %w[
4
+ boot
5
+ ../base/load
6
+ ].each {|f| require File.expand_path("../#{f}", __FILE__)}
7
+
8
+ %w[
9
+ base_model.rb
10
+ *.rb
11
+ **/*.rb
12
+ ].each {|p| Dir[File.expand_path("../../base/models/#{p}", __FILE__)].each {|f| require(f)}}
13
+
14
+ require File.expand_path('../load_controllers', __FILE__)
@@ -0,0 +1,14 @@
1
+ # do NOT edit this file, edit base/load_controllers.rb instead
2
+
3
+ Dir.chdir File.expand_path('../../base/api', __FILE__) do
4
+
5
+ require './base_controller'
6
+ require './rtcp_controller'
7
+
8
+ %w[
9
+ ./**/server.rb
10
+ ].each_with_object([]) {|pattern,o| o.concat(Dir[pattern])}.sort {|a,b|
11
+ a.split(/\/+/).size <=> b.split(/\/+/).size
12
+ }.each {|f| require(f)}
13
+
14
+ end
@@ -0,0 +1,11 @@
1
+ # refer to underlying controller as self.controller
2
+
3
+ self = (env, layout, list, editor) ->
4
+ editor.partials.editor = require('./editor')
5
+ layout.components =
6
+ list: env.render_component(list)
7
+ editor: env.render_component(editor)
8
+ env.render(layout)
9
+ #end
10
+
11
+ module.exports = self
File without changes
File without changes
@@ -0,0 +1,26 @@
1
+ class CONTROLLER_NAME < BaseController
2
+ include Crudle::Controller
3
+
4
+ private
5
+ def model; MODEL_NAME end
6
+
7
+ # def order; end
8
+
9
+ # def filter_by_name params, dataset
10
+ # return if params[:name].nil? || params[:name].empty?
11
+ # dataset.where('name LIKE ?', params[:name] + '%')
12
+ # end
13
+
14
+ # def list_serializer item
15
+ # serializer(item)
16
+ # end
17
+
18
+ # def editor_serializer item
19
+ # serializer(item)
20
+ # end
21
+
22
+ # def serializer item
23
+ # item
24
+ # end
25
+
26
+ end
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "MyApp",
3
+ "version": "0.0.0",
4
+ "description": "...",
5
+ "dependencies": {
6
+ "appril": "*",
7
+ "appril-ractive": "*",
8
+ "appril-reporter": "*",
9
+ "appril-polyfills": "*",
10
+ "crudle": "*",
11
+ "crudle-list": "*",
12
+ "crudle-editor": "*",
13
+ "extract-text-webpack-plugin": "1"
14
+ }
15
+ }
@@ -0,0 +1,54 @@
1
+ var webpack = require('webpack'),
2
+ fs = require('fs'),
3
+ ExtractTextPlugin = require("extract-text-webpack-plugin"),
4
+ child_process = require('child_process')
5
+ ;
6
+
7
+ if (process.env.APP_ENV == 'development') {
8
+ console.log('Generating configs...');
9
+ child_process.execSync('./core/generate_configs.rb');
10
+ }
11
+
12
+ var setup = JSON.parse(fs.readFileSync('./config.json')).webpack;
13
+ console.log(JSON.stringify(setup, null, 2))
14
+
15
+ module.exports = {
16
+ entry: setup.entries,
17
+ output: {
18
+ path: [setup.path, setup.url].join('/'),
19
+ filename: '[name].js',
20
+ publicPath: setup.url + '/', // trailing slash required
21
+ libraryTarget: 'commonjs2'
22
+ },
23
+ module: {
24
+ loaders: [
25
+ { test: /\.coffee$/, loader: 'coffee-loader' },
26
+ { test: /\.html$/, loader: 'ractive-loader' },
27
+ { test: /\.css$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader") },
28
+ { test: /\.json$/, loader: 'json-loader' },
29
+ { test: /\.otf($|\?)/, loader: require.resolve('file-loader') },
30
+ { test: /\.ttf($|\?)/, loader: require.resolve('file-loader') },
31
+ { test: /\.eot($|\?)/, loader: require.resolve('file-loader') },
32
+ { test: /\.svg($|\?)/, loader: require.resolve('file-loader') },
33
+ { test: /\.png($|\?)/, loader: require.resolve('url-loader') + '?limit=10000&mimetype=image/png' },
34
+ { test: /\.jpg($|\?)/, loader: require.resolve('file-loader') },
35
+ { test: /\.gif($|\?)/, loader: require.resolve('file-loader') },
36
+ { test: /\.woff[2]?($|\?)/, loader: require.resolve('url-loader') + '?limit=10000&mimetype=application/font-woff' },
37
+ ]
38
+ },
39
+ resolve: {
40
+ extensions: ['', '.js', '.css', '.json', '.coffee', '.html'],
41
+ alias: {
42
+ app: __dirname,
43
+ base: 'app/base',
44
+ api: 'base/api',
45
+ helpers: 'base/helpers',
46
+ assets: 'base/assets',
47
+ templates: 'base/templates'
48
+ }
49
+ },
50
+ plugins: [
51
+ new webpack.optimize.CommonsChunkPlugin('core', 'core.js'),
52
+ new ExtractTextPlugin("[name].css")
53
+ ]
54
+ }
metadata ADDED
@@ -0,0 +1,157 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: appril-cli
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Slee Woo
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-04-29 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Appril CLI
14
+ email:
15
+ - mail@sleewoo.com
16
+ executables:
17
+ - appril
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - ".gitignore"
22
+ - Rakefile
23
+ - appril-cli.gemspec
24
+ - bin/appril
25
+ - boilerplate/app/.gitignore
26
+ - boilerplate/app/.pryrc
27
+ - boilerplate/app/Gemfile
28
+ - boilerplate/app/Rakefile
29
+ - boilerplate/app/base/api/base_controller.rb
30
+ - boilerplate/app/base/api/index/client.coffee
31
+ - boilerplate/app/base/api/index/layout.html
32
+ - boilerplate/app/base/api/index/server.rb
33
+ - boilerplate/app/base/api/rtcp_controller.rb
34
+ - boilerplate/app/base/assets/styles.css
35
+ - boilerplate/app/base/boot.rb
36
+ - boilerplate/app/base/core.coffee
37
+ - boilerplate/app/base/helpers/application_helpers.coffee
38
+ - boilerplate/app/base/helpers/application_helpers.rb
39
+ - boilerplate/app/base/load.rb
40
+ - boilerplate/app/base/models/base_model.rb
41
+ - boilerplate/app/base/templates/access_denied.html
42
+ - boilerplate/app/base/templates/layout.liquid
43
+ - boilerplate/app/base/templates/layouts/main.html
44
+ - boilerplate/app/base/templates/layouts/none.html
45
+ - boilerplate/app/config.ru
46
+ - boilerplate/app/config/config.rb
47
+ - boilerplate/app/config/config.yml
48
+ - boilerplate/app/config/env/development.yml
49
+ - boilerplate/app/config/env/production.yml
50
+ - boilerplate/app/config/env/stage.yml
51
+ - boilerplate/app/config/env/test.yml
52
+ - boilerplate/app/core/Gemfile
53
+ - boilerplate/app/core/boot.rb
54
+ - boilerplate/app/core/generate_configs.rb
55
+ - boilerplate/app/core/load.rb
56
+ - boilerplate/app/core/load_controllers.rb
57
+ - boilerplate/app/generators/api/client.coffee
58
+ - boilerplate/app/generators/api/layout.html
59
+ - boilerplate/app/generators/api/server.rb
60
+ - boilerplate/app/package.json
61
+ - boilerplate/app/public/.ignore
62
+ - boilerplate/app/tmp/.ignore
63
+ - boilerplate/app/var/.ignore
64
+ - boilerplate/app/webpack.config.js
65
+ - boilerplate/crudle/Gemfile
66
+ - boilerplate/crudle/base/core.coffee
67
+ - boilerplate/crudle/base/templates/menu.html
68
+ - boilerplate/crudle/generators/api/client.coffee
69
+ - boilerplate/crudle/generators/api/editor.html
70
+ - boilerplate/crudle/generators/api/server.rb
71
+ - boilerplate/crudle/package.json
72
+ - boilerplate/crudle/webpack.config.js
73
+ - docker/Dockerfile
74
+ - docker/run
75
+ - docker/skel/build.sh
76
+ - docker/skel/cleanup.sh
77
+ - docker/skel/config.yml
78
+ - docker/skel/prepare_build.sh
79
+ - docker/skel/start.sh
80
+ - docker/start
81
+ - lib/appril-cli.rb
82
+ - lib/appril-cli/app.rb
83
+ - lib/appril-cli/app/install.rb
84
+ - lib/appril-cli/app/update.rb
85
+ - lib/appril-cli/assertions.rb
86
+ - lib/appril-cli/docker.rb
87
+ - lib/appril-cli/docker/build.rb
88
+ - lib/appril-cli/docker/install.rb
89
+ - lib/appril-cli/docker/update.rb
90
+ - lib/appril-cli/generator.rb
91
+ - lib/appril-cli/generator/api.rb
92
+ - lib/appril-cli/helpers.rb
93
+ - lib/appril-cli/version.rb
94
+ - sandbox/.gitignore
95
+ - sandbox/.pryrc
96
+ - sandbox/Gemfile
97
+ - sandbox/Rakefile
98
+ - sandbox/base/api/base_controller.rb
99
+ - sandbox/base/api/index/client.coffee
100
+ - sandbox/base/api/index/layout.html
101
+ - sandbox/base/api/index/server.rb
102
+ - sandbox/base/api/rtcp_controller.rb
103
+ - sandbox/base/assets/styles.css
104
+ - sandbox/base/boot.rb
105
+ - sandbox/base/core.coffee
106
+ - sandbox/base/helpers/application_helpers.coffee
107
+ - sandbox/base/helpers/application_helpers.rb
108
+ - sandbox/base/load.rb
109
+ - sandbox/base/models/base_model.rb
110
+ - sandbox/base/templates/access_denied.html
111
+ - sandbox/base/templates/layout.liquid
112
+ - sandbox/base/templates/layouts/main.html
113
+ - sandbox/base/templates/layouts/none.html
114
+ - sandbox/base/templates/menu.html
115
+ - sandbox/config.ru
116
+ - sandbox/config/config.rb
117
+ - sandbox/config/config.yml
118
+ - sandbox/config/env/development.yml
119
+ - sandbox/config/env/production.yml
120
+ - sandbox/config/env/stage.yml
121
+ - sandbox/config/env/test.yml
122
+ - sandbox/core/Gemfile
123
+ - sandbox/core/boot.rb
124
+ - sandbox/core/generate_configs.rb
125
+ - sandbox/core/load.rb
126
+ - sandbox/core/load_controllers.rb
127
+ - sandbox/generators/api/client.coffee
128
+ - sandbox/generators/api/editor.html
129
+ - sandbox/generators/api/layout.html
130
+ - sandbox/generators/api/server.rb
131
+ - sandbox/package.json
132
+ - sandbox/webpack.config.js
133
+ homepage: https://github.com/appril/appril-cli
134
+ licenses:
135
+ - MIT
136
+ metadata: {}
137
+ post_install_message:
138
+ rdoc_options: []
139
+ require_paths:
140
+ - lib
141
+ required_ruby_version: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '2.0'
146
+ required_rubygems_version: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - ">="
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
151
+ requirements: []
152
+ rubyforge_project:
153
+ rubygems_version: 2.5.1
154
+ signing_key:
155
+ specification_version: 4
156
+ summary: '["appril-cli-0.0.0", "Appril CLI"]'
157
+ test_files: []