mvpkit 1.1.2 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -24
  3. data/README.md +43 -48
  4. data/VERSION +1 -1
  5. data/bin/mvp +2 -2
  6. data/config/routes.rb +0 -4
  7. data/mvpkit.gemspec +57 -129
  8. data/package.json +3 -22
  9. data/project/.babelrc +23 -1
  10. data/project/.gitignore +2 -0
  11. data/project/.postcssrc.yml +4 -0
  12. data/project/Gemfile +21 -13
  13. data/project/Gemfile.lock +181 -153
  14. data/project/Procfile +1 -1
  15. data/project/README.md +2 -116
  16. data/project/app/assets/javascripts/application.js +0 -8
  17. data/project/app/assets/stylesheets/application.scss +9 -3
  18. data/project/app/assets/stylesheets/elements/alerts.scss +10 -0
  19. data/project/app/assets/stylesheets/elements/badges.scss +16 -0
  20. data/project/app/assets/stylesheets/elements/buttons.scss +107 -0
  21. data/project/app/assets/stylesheets/elements/cards.scss +68 -0
  22. data/project/app/assets/stylesheets/elements/drawer.scss +66 -0
  23. data/project/app/assets/stylesheets/elements/forms.scss +64 -0
  24. data/project/app/assets/stylesheets/elements/interstitial.scss +24 -0
  25. data/project/app/assets/stylesheets/elements/navs.scss +15 -0
  26. data/project/app/assets/stylesheets/elements/sidebar.scss +30 -0
  27. data/project/app/assets/stylesheets/elements/tables.scss +61 -0
  28. data/project/app/assets/stylesheets/elements/timeline.scss +38 -0
  29. data/project/app/assets/stylesheets/elements/typography.scss +80 -0
  30. data/project/app/assets/stylesheets/init/bootstrap.scss +53 -0
  31. data/project/app/assets/stylesheets/init/reset.scss +20 -0
  32. data/project/app/assets/stylesheets/init/variables.scss +40 -0
  33. data/project/app/assets/stylesheets/treatments/backgrounds.scss +23 -0
  34. data/project/app/assets/stylesheets/treatments/borders.scss +7 -0
  35. data/project/app/{webpack/stylesheets/skin → assets/stylesheets/treatments}/spacing.scss +4 -10
  36. data/{app/controllers/mvp → project/app/controllers}/analytics_controller.rb +0 -0
  37. data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/analytics_concern.rb +0 -0
  38. data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/seo_concern.rb +0 -0
  39. data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/session_concern.rb +0 -0
  40. data/project/app/controllers/conversions_controller.rb +1 -2
  41. data/{app/controllers/mvp → project/app/controllers}/seo_controller.rb +0 -0
  42. data/project/app/engines/admin/app/views/layouts/admin/_header.html.erb +18 -18
  43. data/project/app/helpers/application_helper.rb +0 -14
  44. data/{app/assets/stylesheets/mvp/application.scss → project/app/javascript/components/.gitkeep} +0 -0
  45. data/project/app/javascript/components/conversion.jsx +73 -0
  46. data/project/app/javascript/packs/application.js +28 -0
  47. data/project/app/javascript/packs/server_rendering.js +5 -0
  48. data/project/app/models/conversion.rb +1 -1
  49. data/project/app/views/conversions/show.json.jbuilder +1 -0
  50. data/project/app/views/home/index.html.erb +22 -22
  51. data/project/app/views/layouts/_header.html.erb +35 -34
  52. data/{app/views/layouts/mvp → project/app/views/layouts}/_instrumentation.html.erb +0 -0
  53. data/{app/views/layouts/mvp → project/app/views/layouts}/_meta.html.erb +0 -0
  54. data/project/app/views/layouts/application.html.erb +31 -21
  55. data/project/bin/setup +1 -1
  56. data/project/bin/webpack +28 -0
  57. data/project/bin/webpack-dev-server +43 -0
  58. data/project/config/initializers/assets.rb +2 -0
  59. data/{config → project/config}/initializers/canonical_host.rb +0 -0
  60. data/{config → project/config}/initializers/cloudinary.rb +0 -0
  61. data/{config → project/config}/initializers/rollbar.rb +0 -0
  62. data/{config → project/config}/initializers/routing.rb +0 -0
  63. data/{config → project/config}/initializers/spoof_ip.rb +0 -0
  64. data/{config → project/config}/initializers/ssl.rb +0 -0
  65. data/project/config/routes.rb +5 -7
  66. data/project/config/webpack/configuration.js +35 -0
  67. data/project/config/webpack/development.js +32 -0
  68. data/project/config/webpack/loaders/assets.js +12 -0
  69. data/project/config/webpack/loaders/babel.js +5 -0
  70. data/project/config/webpack/loaders/coffee.js +4 -0
  71. data/project/config/webpack/loaders/erb.js +9 -0
  72. data/project/config/webpack/loaders/react.js +5 -0
  73. data/project/config/webpack/loaders/sass.js +15 -0
  74. data/project/config/webpack/production.js +35 -0
  75. data/project/config/webpack/shared.js +58 -0
  76. data/project/config/webpack/test.js +6 -0
  77. data/project/config/webpacker.yml +38 -0
  78. data/project/package-lock.json +250 -0
  79. data/project/package.json +37 -17
  80. data/project/yarn.lock +4538 -0
  81. metadata +56 -326
  82. data/app/assets/javascripts/mvp/application.js +0 -1
  83. data/app/controllers/mvp/styleguide_controller.rb +0 -23
  84. data/app/helpers/minimum_viable_product/body_helper.rb +0 -14
  85. data/app/helpers/minimum_viable_product/bootstrap_helper.rb +0 -38
  86. data/app/helpers/minimum_viable_product/styleguide_helper.rb +0 -4
  87. data/app/models/concerns/mvp/slugification.rb +0 -24
  88. data/app/views/layouts/mvp/application.html.erb +0 -19
  89. data/app/views/mvp/styleguide/_example.html.erb +0 -6
  90. data/app/views/mvp/styleguide/bootstrap.html.erb +0 -43
  91. data/app/views/mvp/styleguide/bootstrap/_buttons.html.erb +0 -191
  92. data/app/views/mvp/styleguide/bootstrap/_forms.html.erb +0 -192
  93. data/app/views/mvp/styleguide/bootstrap/_header.html.erb +0 -48
  94. data/app/views/mvp/styleguide/bootstrap/_panels.html.erb +0 -16
  95. data/app/views/mvp/styleguide/bootstrap/_tables.html.erb +0 -34
  96. data/app/views/mvp/styleguide/bootstrap/_typography.html.erb +0 -51
  97. data/app/views/mvp/styleguide/elements/_grouping.html.erb +0 -1
  98. data/app/views/mvp/styleguide/elements/partials/_row_groups_of.html.erb +0 -7
  99. data/app/views/mvp/styleguide/index.html.erb +0 -17
  100. data/app/views/mvp/styleguide/layouts/basic.html.erb +0 -4
  101. data/app/views/mvp/styleguide/layouts/carousel.html.erb +0 -120
  102. data/app/views/mvp/styleguide/layouts/cover.html.erb +0 -34
  103. data/config/initializers/assets.rb +0 -2
  104. data/config/initializers/geocoder.rb +0 -9
  105. data/project/app/assets/javascripts/pack-compiled.js +0 -37394
  106. data/project/app/assets/javascripts/pack-compiled.js.map +0 -1
  107. data/project/app/assets/javascripts/templates.js.erb +0 -14
  108. data/project/app/assets/stylesheets/pack-compiled.css +0 -33946
  109. data/project/app/assets/stylesheets/pack-compiled.css.map +0 -1
  110. data/project/app/controllers/examples_controller.rb +0 -2
  111. data/project/app/views/examples/index.html.erb +0 -1
  112. data/project/app/views/examples/mustache.html.erb +0 -40
  113. data/project/app/views/examples/mustache/template.mustache +0 -1
  114. data/project/app/views/home/conversion.html.erb +0 -12
  115. data/project/app/webpack/javascripts/behaviors/example.js +0 -21
  116. data/project/app/webpack/javascripts/controllers/home.js +0 -15
  117. data/project/app/webpack/javascripts/lib/analytics.js +0 -22
  118. data/project/app/webpack/javascripts/lib/clientsidevalidations.js +0 -3
  119. data/project/app/webpack/javascripts/lib/controllers.js +0 -28
  120. data/project/app/webpack/javascripts/lib/forms.js +0 -28
  121. data/project/app/webpack/javascripts/lib/selectize.js +0 -1
  122. data/project/app/webpack/javascripts/pack.js +0 -50
  123. data/project/app/webpack/stylesheets/config/variables.scss +0 -41
  124. data/project/app/webpack/stylesheets/init/reset.scss +0 -48
  125. data/project/app/webpack/stylesheets/layout/main.scss +0 -7
  126. data/project/app/webpack/stylesheets/pack.scss +0 -20
  127. data/project/app/webpack/stylesheets/skin/alerts.scss +0 -3
  128. data/project/app/webpack/stylesheets/skin/buttons.scss +0 -38
  129. data/project/app/webpack/stylesheets/skin/hero.scss +0 -45
  130. data/project/app/webpack/stylesheets/skin/images.scss +0 -13
  131. data/project/app/webpack/stylesheets/skin/progress.scss +0 -3
  132. data/project/app/webpack/stylesheets/skin/selectize.scss +0 -30
  133. data/project/app/webpack/stylesheets/skin/tables.scss +0 -24
  134. data/project/app/webpack/stylesheets/skin/treatments.scss +0 -3
  135. data/project/app/webpack/stylesheets/skin/turbolinks.scss +0 -4
  136. data/project/app/webpack/stylesheets/skin/typography.scss +0 -116
  137. data/project/webpack.config.js +0 -76
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3f5dad34406e94f651ff8f30f5abd9e19ed10f2d
4
- data.tar.gz: 0da4f9e1dd83bd0db759d260d90bc3fbe1419380
3
+ metadata.gz: efb3bd7d5c2433bbcb2b04a9f01b4c7eae68ec25
4
+ data.tar.gz: a438288232925292eae8081d6a1c5a5ad4200d47
5
5
  SHA512:
6
- metadata.gz: dde9d299c2141bb4c2fdf59f134a6539d665c13496a380177e406e65a87ff0d06062e812b4e6a0e9fd573401af3138563e5869a4d4ee8a7f9b922c44f1171f96
7
- data.tar.gz: 6e9b51d6f06d877dbda9ed3e77eaea1bd44ec2278d167f8a3ecdb3ad13778b187e47ba755d37a482235cc58811712795197c87ae263f44d15b042eec5ddb6286
6
+ metadata.gz: 3e86972e2bdb44fe843ded17e8a3a5bd3cb51e9fc36e1936c3ce6ddf22905d70d4b59c6d94f4f9ebcf055586491f09f7aa68c8fe5ac674df48b1f7235cda6626
7
+ data.tar.gz: 79d4083e27af2f062a85ff68bce876e22275571b3fd35147540c7ebfd49649b93f7077f32c83a73d38d124915254e87653cf52ffe9e75b9903f53d8387e1454d
data/Gemfile CHANGED
@@ -1,30 +1,7 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem 'carrierwave'
4
- gem "cloudinary"
5
- gem "geocoder"
6
- gem 'faraday'
7
- gem 'fog'
8
- gem 'fog-aws'
9
- gem "hashie"
10
- gem "rack-canonical-host"
11
- gem 'rack-ssl-enforcer'
12
- gem 'rollbar'
13
- gem 'sass-rails', '~> 5.0'
14
- gem 'sitemap_generator'
15
- gem 'slack-notifier'
3
+ gem "semantic"
16
4
 
17
5
  group :development do
18
- gem "byebug"
19
- gem "better_errors"
20
- gem "binding_of_caller"
21
- gem "bullet"
22
- gem "semantic"
23
- gem 'web-console', '~> 2.0'
24
- # gem 'spring'
25
- # gem "shoulda", ">= 0"
26
- # gem "rdoc", "~> 3.12"
27
- # gem "bundler", "~> 1.0"
28
6
  gem "jeweler", "~> 2.3.2"
29
- # gem "simplecov", ">= 0"
30
7
  end
data/README.md CHANGED
@@ -1,43 +1,33 @@
1
- # Installation
1
+ # Quickstart
2
2
 
3
3
  Install the mvp gem:
4
4
 
5
5
  ```
6
- gem install minimum_viable_product
6
+ gem install mvpkit
7
7
  ```
8
8
 
9
- Then setup your project:
9
+ Set up a new project
10
10
 
11
11
  ```
12
12
  mvp new PROJECT
13
13
  ```
14
14
 
15
- # Setup
16
-
17
- ## `.env`
18
-
19
- Set your `.env` file up with your own variables
15
+ Start the server (make sure you have [foreman](https://github.com/ddollar/foreman) installed)
20
16
 
21
17
  ```
22
- ROLLBAR_CLIENT_ACCESS_TOKEN=
23
- ROLLBAR_SERVER_ACCESS_TOKEN=
24
- SEGMENT_WRITE_KEY=
25
- SLACK_WEBHOOK_URL=
26
- SLACK_POST_USERNAME=
27
- FACEBOOK_TRACKING_ID=
28
- AMPLITUDE_API_KEY=
29
- HOST_DOMAIN=localhost
30
- HOST_PORT=3000
31
- HOST_PROTOCOL=http
32
- GOOGLE_ANALYTICS_ID=
33
- HOTJAR_ID=
34
- AWS_ACCESS_KEY_ID=
35
- AWS_SECRET_ACCESS_KEY=
36
- AWS_S3_BUCKET=
37
- SPOOF_IP=true
18
+ cd PROJECT
19
+ foreman start
38
20
  ```
39
21
 
40
- ## Heroku
22
+ # Introduction
23
+
24
+ mvpkit is a tool for quickly building prototypes and rapid ideation. This stack is built entirely for speed of development.
25
+
26
+ If you are looking for a landing page tool, [there](http://leadpages.net) [are](https://wix.com) [plenty](https://instapage.com) [of](https://unbounce.com) [them](https://hubspot.com) [out](https://landingfolio.com) [there](https://landerapp.com).
27
+
28
+ It combines two fast (and not necessarily long term) web technologies to test your ideas and (in)validate them quickly.
29
+
30
+ # Heroku
41
31
 
42
32
  To setup deployment for heroku, first create the project:
43
33
 
@@ -45,37 +35,54 @@ To setup deployment for heroku, first create the project:
45
35
  heroku create PROJECT
46
36
  ```
47
37
 
48
- You're probably going to want Database backups. This will let you use `rake db:import`
38
+ Then setup the stack:
49
39
 
50
40
  ```
51
- heroku pg:backups capture
41
+ heroku addons:create heroku-postgresql
42
+ heroku buildpacks:set heroku/ruby
43
+ heroku buildpacks:add --index 1 heroku/nodejs
52
44
  ```
53
45
 
54
- You're also going to need to setup the buildpacks
46
+ And deploy:
55
47
 
56
48
  ```
57
- heroku buildpacks:set heroku/ruby
58
- heroku buildpacks:add --index 1 heroku/nodejs
49
+ git push heroku master
59
50
  ```
60
51
 
61
- Make sure to turn off npm cacheing (since we're loading MVP from a repo)
52
+ # Extras
53
+
54
+ ## Google Sitemaps
55
+
56
+ If SEO matters to you, you'll want to turn on google sitemap generation.
57
+
58
+ #### Setup
59
+
60
+ Edit `config/sitemap.rb` with your own custom routes.
61
+
62
+ #### Updating
63
+
64
+ Run `rake sitemap:refresh` in production to update Bing/Google with changes to the sitemap.
65
+
66
+ #### Scheduling
67
+
68
+ Put this in a `cron` task or in Heroku Scheduler.
62
69
 
63
70
  ```
64
- heroku config:set NODE_MODULES_CACHE=false
71
+ rake sitemap:worker
65
72
  ```
66
73
 
67
- Add a scheduled task to update your sitemaps:
74
+ If you're on heroku:
68
75
 
69
76
  ```
70
77
  heroku addons:create scheduler:standard
71
78
  heroku addons:open scheduler
72
79
  ```
73
80
 
74
- Add the following task: `rake sitemap:worker`. Your choice on the frequency but I usually use `daily`
81
+ And add the following task: `rake sitemap:worker`. Your choice on the frequency but I usually use `daily`
75
82
 
76
- # SEO
83
+ ## SEO
77
84
 
78
- ## Meta Properties
85
+ ### Meta Properties
79
86
 
80
87
  All meta fields are controlled via the `page` object. Set attributes on this in order to get meta properties populated. This is best done at the controller level.
81
88
 
@@ -93,18 +100,6 @@ All meta fields are controlled via the `page` object. Set attributes on this in
93
100
  |`page.og_image`| | |
94
101
  |`page.twitter_card`| | | |
95
102
 
96
- ## Sitemaps
97
-
98
- ### Setup
99
-
100
- Edit `config/sitemap.rb` with your own custom routes.
101
-
102
- ### Updating
103
-
104
- Run `sitemap:refresh` in production to update Bing/Google with changes to the sitemap.
105
-
106
- Put this in a `cron` task or in Heroku Scheduler.
107
-
108
103
  # Helpers
109
104
 
110
105
  ## Geolocation
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.2
1
+ 2.0.0
data/bin/mvp CHANGED
@@ -44,10 +44,10 @@ when 'new'
44
44
  run "cd #{slug}; bin/setup", "\n== Project Setup"
45
45
 
46
46
  when 'update'
47
- run "bundle update minimum_viable_product"
47
+ run "bundle update mvpkit"
48
48
  # npm has a bug where it won't update new dependencies
49
49
  # https://github.com/npm/npm/issues/1341
50
- run "rm -rf node_modules; npm install"
50
+ # run "rm -rf node_modules; yarn"
51
51
  when '-v','version'
52
52
  version = File.read(File.dirname(__FILE__) + '/../VERSION')
53
53
  puts "Version #{version}"
data/config/routes.rb CHANGED
@@ -1,6 +1,2 @@
1
1
  MinimumViableProduct::Engine.routes.draw do
2
- get 'robots.txt', to: 'seo#robots', as: :robots
3
- get '/sitemap.xml.gz', to: redirect("https://#{ENV['AWS_S3_BUCKET']}.s3.amazonaws.com/#{Rails.application.class.parent_name.underscore}/sitemaps/sitemap.xml.gz"), as: :sitemap
4
-
5
- get 'analytics/optout', to: 'analytics#optout'
6
2
  end
data/mvpkit.gemspec CHANGED
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: mvpkit 1.1.2 ruby lib
5
+ # stub: mvpkit 2.0.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "mvpkit".freeze
9
- s.version = "1.1.2"
9
+ s.version = "2.0.0"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["Ian Hunter".freeze]
14
- s.date = "2017-06-07"
14
+ s.date = "2017-09-10"
15
15
  s.description = "Built for Developers. Ideal for MVPs, product ideation and validation.".freeze
16
16
  s.email = "ianhunter@gmail.com".freeze
17
17
  s.executables = ["mvp".freeze]
@@ -27,50 +27,13 @@ Gem::Specification.new do |s|
27
27
  "README.md",
28
28
  "Rakefile",
29
29
  "VERSION",
30
- "app/assets/javascripts/mvp/application.js",
31
- "app/assets/stylesheets/mvp/application.scss",
32
- "app/controllers/concerns/mvp/analytics_concern.rb",
33
- "app/controllers/concerns/mvp/seo_concern.rb",
34
- "app/controllers/concerns/mvp/session_concern.rb",
35
- "app/controllers/mvp/analytics_controller.rb",
36
- "app/controllers/mvp/seo_controller.rb",
37
- "app/controllers/mvp/styleguide_controller.rb",
38
- "app/helpers/minimum_viable_product/body_helper.rb",
39
- "app/helpers/minimum_viable_product/bootstrap_helper.rb",
40
- "app/helpers/minimum_viable_product/styleguide_helper.rb",
41
- "app/models/concerns/mvp/slugification.rb",
42
- "app/views/layouts/mvp/_instrumentation.html.erb",
43
- "app/views/layouts/mvp/_meta.html.erb",
44
- "app/views/layouts/mvp/application.html.erb",
45
- "app/views/mvp/styleguide/_example.html.erb",
46
- "app/views/mvp/styleguide/bootstrap.html.erb",
47
- "app/views/mvp/styleguide/bootstrap/_buttons.html.erb",
48
- "app/views/mvp/styleguide/bootstrap/_forms.html.erb",
49
- "app/views/mvp/styleguide/bootstrap/_header.html.erb",
50
- "app/views/mvp/styleguide/bootstrap/_panels.html.erb",
51
- "app/views/mvp/styleguide/bootstrap/_tables.html.erb",
52
- "app/views/mvp/styleguide/bootstrap/_typography.html.erb",
53
- "app/views/mvp/styleguide/elements/_grouping.html.erb",
54
- "app/views/mvp/styleguide/elements/partials/_row_groups_of.html.erb",
55
- "app/views/mvp/styleguide/index.html.erb",
56
- "app/views/mvp/styleguide/layouts/basic.html.erb",
57
- "app/views/mvp/styleguide/layouts/carousel.html.erb",
58
- "app/views/mvp/styleguide/layouts/cover.html.erb",
59
30
  "assets/js/application.js",
60
31
  "assets/js/init/controllers.js",
61
32
  "assets/js/init/forms.js",
62
33
  "bin/mvp",
63
34
  "bin/rails",
64
- "config/initializers/assets.rb",
65
- "config/initializers/canonical_host.rb",
66
- "config/initializers/cloudinary.rb",
67
- "config/initializers/geocoder.rb",
68
35
  "config/initializers/iteration.rb",
69
36
  "config/initializers/project.rb",
70
- "config/initializers/rollbar.rb",
71
- "config/initializers/routing.rb",
72
- "config/initializers/spoof_ip.rb",
73
- "config/initializers/ssl.rb",
74
37
  "config/routes.rb",
75
38
  "lib/mvp/engine.rb",
76
39
  "lib/mvp/ext/nil.rb",
@@ -83,6 +46,7 @@ Gem::Specification.new do |s|
83
46
  "project/.env",
84
47
  "project/.gitignore",
85
48
  "project/.iteration",
49
+ "project/.postcssrc.yml",
86
50
  "project/Gemfile",
87
51
  "project/Gemfile.lock",
88
52
  "project/Procfile",
@@ -91,16 +55,33 @@ Gem::Specification.new do |s|
91
55
  "project/app/assets/config/manifest.js",
92
56
  "project/app/assets/javascripts/application.js",
93
57
  "project/app/assets/javascripts/cable.js",
94
- "project/app/assets/javascripts/pack-compiled.js",
95
- "project/app/assets/javascripts/pack-compiled.js.map",
96
- "project/app/assets/javascripts/templates.js.erb",
97
58
  "project/app/assets/stylesheets/application.scss",
98
- "project/app/assets/stylesheets/pack-compiled.css",
99
- "project/app/assets/stylesheets/pack-compiled.css.map",
59
+ "project/app/assets/stylesheets/elements/alerts.scss",
60
+ "project/app/assets/stylesheets/elements/badges.scss",
61
+ "project/app/assets/stylesheets/elements/buttons.scss",
62
+ "project/app/assets/stylesheets/elements/cards.scss",
63
+ "project/app/assets/stylesheets/elements/drawer.scss",
64
+ "project/app/assets/stylesheets/elements/forms.scss",
65
+ "project/app/assets/stylesheets/elements/interstitial.scss",
66
+ "project/app/assets/stylesheets/elements/navs.scss",
67
+ "project/app/assets/stylesheets/elements/sidebar.scss",
68
+ "project/app/assets/stylesheets/elements/tables.scss",
69
+ "project/app/assets/stylesheets/elements/timeline.scss",
70
+ "project/app/assets/stylesheets/elements/typography.scss",
71
+ "project/app/assets/stylesheets/init/bootstrap.scss",
72
+ "project/app/assets/stylesheets/init/reset.scss",
73
+ "project/app/assets/stylesheets/init/variables.scss",
74
+ "project/app/assets/stylesheets/treatments/backgrounds.scss",
75
+ "project/app/assets/stylesheets/treatments/borders.scss",
76
+ "project/app/assets/stylesheets/treatments/spacing.scss",
77
+ "project/app/controllers/analytics_controller.rb",
100
78
  "project/app/controllers/application_controller.rb",
79
+ "project/app/controllers/concerns/analytics_concern.rb",
80
+ "project/app/controllers/concerns/seo_concern.rb",
81
+ "project/app/controllers/concerns/session_concern.rb",
101
82
  "project/app/controllers/conversions_controller.rb",
102
- "project/app/controllers/examples_controller.rb",
103
83
  "project/app/controllers/home_controller.rb",
84
+ "project/app/controllers/seo_controller.rb",
104
85
  "project/app/engines/admin/.gitignore",
105
86
  "project/app/engines/admin/Gemfile",
106
87
  "project/app/engines/admin/Gemfile.lock",
@@ -145,53 +126,35 @@ Gem::Specification.new do |s|
145
126
  "project/app/engines/admin/test/integration/navigation_test.rb",
146
127
  "project/app/engines/admin/test/test_helper.rb",
147
128
  "project/app/helpers/application_helper.rb",
129
+ "project/app/javascript/components/.gitkeep",
130
+ "project/app/javascript/components/conversion.jsx",
131
+ "project/app/javascript/packs/application.js",
132
+ "project/app/javascript/packs/server_rendering.js",
148
133
  "project/app/mailers/application_mailer.rb",
149
134
  "project/app/models/application_record.rb",
150
135
  "project/app/models/conversion.rb",
151
136
  "project/app/models/user.rb",
152
137
  "project/app/templates/README.txt",
153
138
  "project/app/templates/examples/template.mustache",
154
- "project/app/views/examples/index.html.erb",
155
- "project/app/views/examples/mustache.html.erb",
156
- "project/app/views/examples/mustache/template.mustache",
157
- "project/app/views/home/conversion.html.erb",
139
+ "project/app/views/conversions/show.json.jbuilder",
158
140
  "project/app/views/home/index.html.erb",
159
141
  "project/app/views/layouts/_header.html.erb",
142
+ "project/app/views/layouts/_instrumentation.html.erb",
143
+ "project/app/views/layouts/_meta.html.erb",
160
144
  "project/app/views/layouts/_notifications.html.erb",
161
145
  "project/app/views/layouts/application.html.erb",
162
146
  "project/app/views/layouts/mailer.html.erb",
163
147
  "project/app/views/layouts/mailer.text.erb",
164
148
  "project/app/views/static/internal_server_error.html.erb",
165
149
  "project/app/views/static/not_found.html.erb",
166
- "project/app/webpack/javascripts/behaviors/example.js",
167
- "project/app/webpack/javascripts/controllers/home.js",
168
- "project/app/webpack/javascripts/lib/analytics.js",
169
- "project/app/webpack/javascripts/lib/clientsidevalidations.js",
170
- "project/app/webpack/javascripts/lib/controllers.js",
171
- "project/app/webpack/javascripts/lib/forms.js",
172
- "project/app/webpack/javascripts/lib/selectize.js",
173
- "project/app/webpack/javascripts/pack.js",
174
- "project/app/webpack/stylesheets/config/variables.scss",
175
- "project/app/webpack/stylesheets/init/reset.scss",
176
- "project/app/webpack/stylesheets/layout/main.scss",
177
- "project/app/webpack/stylesheets/pack.scss",
178
- "project/app/webpack/stylesheets/skin/alerts.scss",
179
- "project/app/webpack/stylesheets/skin/buttons.scss",
180
- "project/app/webpack/stylesheets/skin/hero.scss",
181
- "project/app/webpack/stylesheets/skin/images.scss",
182
- "project/app/webpack/stylesheets/skin/progress.scss",
183
- "project/app/webpack/stylesheets/skin/selectize.scss",
184
- "project/app/webpack/stylesheets/skin/spacing.scss",
185
- "project/app/webpack/stylesheets/skin/tables.scss",
186
- "project/app/webpack/stylesheets/skin/treatments.scss",
187
- "project/app/webpack/stylesheets/skin/turbolinks.scss",
188
- "project/app/webpack/stylesheets/skin/typography.scss",
189
150
  "project/bin/bundle",
190
151
  "project/bin/rails",
191
152
  "project/bin/rake",
192
153
  "project/bin/setup",
193
154
  "project/bin/spring",
194
155
  "project/bin/update",
156
+ "project/bin/webpack",
157
+ "project/bin/webpack-dev-server",
195
158
  "project/config.ru",
196
159
  "project/config/application.rb",
197
160
  "project/config/boot.rb",
@@ -205,7 +168,9 @@ Gem::Specification.new do |s|
205
168
  "project/config/initializers/application_controller_renderer.rb",
206
169
  "project/config/initializers/assets.rb",
207
170
  "project/config/initializers/backtrace_silencers.rb",
171
+ "project/config/initializers/canonical_host.rb",
208
172
  "project/config/initializers/client_side_validations.rb",
173
+ "project/config/initializers/cloudinary.rb",
209
174
  "project/config/initializers/cookies_serializer.rb",
210
175
  "project/config/initializers/date_formats.rb",
211
176
  "project/config/initializers/devise.rb",
@@ -215,9 +180,13 @@ Gem::Specification.new do |s|
215
180
  "project/config/initializers/inflections.rb",
216
181
  "project/config/initializers/mime_types.rb",
217
182
  "project/config/initializers/new_framework_defaults.rb",
183
+ "project/config/initializers/rollbar.rb",
184
+ "project/config/initializers/routing.rb",
218
185
  "project/config/initializers/session_store.rb",
219
186
  "project/config/initializers/sidekiq.rb",
220
187
  "project/config/initializers/simple_form.rb",
188
+ "project/config/initializers/spoof_ip.rb",
189
+ "project/config/initializers/ssl.rb",
221
190
  "project/config/initializers/stripe.rb",
222
191
  "project/config/initializers/wrap_parameters.rb",
223
192
  "project/config/locales/devise.en.yml",
@@ -231,6 +200,18 @@ Gem::Specification.new do |s|
231
200
  "project/config/spring.rb",
232
201
  "project/config/stripe/coupons.rb",
233
202
  "project/config/stripe/plans.rb",
203
+ "project/config/webpack/configuration.js",
204
+ "project/config/webpack/development.js",
205
+ "project/config/webpack/loaders/assets.js",
206
+ "project/config/webpack/loaders/babel.js",
207
+ "project/config/webpack/loaders/coffee.js",
208
+ "project/config/webpack/loaders/erb.js",
209
+ "project/config/webpack/loaders/react.js",
210
+ "project/config/webpack/loaders/sass.js",
211
+ "project/config/webpack/production.js",
212
+ "project/config/webpack/shared.js",
213
+ "project/config/webpack/test.js",
214
+ "project/config/webpacker.yml",
234
215
  "project/db/migrate/2017000000000_add_uuid_pk_by_default.rb",
235
216
  "project/db/migrate/20170415224839_create_conversions.rb",
236
217
  "project/db/migrate/20170415225327_devise_create_users.rb",
@@ -240,11 +221,12 @@ Gem::Specification.new do |s|
240
221
  "project/lib/tasks/heroku.rake",
241
222
  "project/lib/tasks/migrations.rake",
242
223
  "project/log/.keep",
224
+ "project/package-lock.json",
243
225
  "project/package.json",
244
226
  "project/public/favicon.ico",
245
227
  "project/vendor/assets/javascripts/.keep",
246
228
  "project/vendor/assets/stylesheets/.keep",
247
- "project/webpack.config.js",
229
+ "project/yarn.lock",
248
230
  "test/helper.rb",
249
231
  "test/test_minimum_viable_product.rb"
250
232
  ]
@@ -257,68 +239,14 @@ Gem::Specification.new do |s|
257
239
  s.specification_version = 4
258
240
 
259
241
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
260
- s.add_runtime_dependency(%q<carrierwave>.freeze, [">= 0"])
261
- s.add_runtime_dependency(%q<cloudinary>.freeze, [">= 0"])
262
- s.add_runtime_dependency(%q<geocoder>.freeze, [">= 0"])
263
- s.add_runtime_dependency(%q<faraday>.freeze, [">= 0"])
264
- s.add_runtime_dependency(%q<fog>.freeze, [">= 0"])
265
- s.add_runtime_dependency(%q<fog-aws>.freeze, [">= 0"])
266
- s.add_runtime_dependency(%q<hashie>.freeze, [">= 0"])
267
- s.add_runtime_dependency(%q<rack-canonical-host>.freeze, [">= 0"])
268
- s.add_runtime_dependency(%q<rack-ssl-enforcer>.freeze, [">= 0"])
269
- s.add_runtime_dependency(%q<rollbar>.freeze, [">= 0"])
270
- s.add_runtime_dependency(%q<sass-rails>.freeze, ["~> 5.0"])
271
- s.add_runtime_dependency(%q<sitemap_generator>.freeze, [">= 0"])
272
- s.add_runtime_dependency(%q<slack-notifier>.freeze, [">= 0"])
273
- s.add_development_dependency(%q<byebug>.freeze, [">= 0"])
274
- s.add_development_dependency(%q<better_errors>.freeze, [">= 0"])
275
- s.add_development_dependency(%q<binding_of_caller>.freeze, [">= 0"])
276
- s.add_development_dependency(%q<bullet>.freeze, [">= 0"])
277
- s.add_development_dependency(%q<semantic>.freeze, [">= 0"])
278
- s.add_development_dependency(%q<web-console>.freeze, ["~> 2.0"])
242
+ s.add_runtime_dependency(%q<semantic>.freeze, [">= 0"])
279
243
  s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.3.2"])
280
244
  else
281
- s.add_dependency(%q<carrierwave>.freeze, [">= 0"])
282
- s.add_dependency(%q<cloudinary>.freeze, [">= 0"])
283
- s.add_dependency(%q<geocoder>.freeze, [">= 0"])
284
- s.add_dependency(%q<faraday>.freeze, [">= 0"])
285
- s.add_dependency(%q<fog>.freeze, [">= 0"])
286
- s.add_dependency(%q<fog-aws>.freeze, [">= 0"])
287
- s.add_dependency(%q<hashie>.freeze, [">= 0"])
288
- s.add_dependency(%q<rack-canonical-host>.freeze, [">= 0"])
289
- s.add_dependency(%q<rack-ssl-enforcer>.freeze, [">= 0"])
290
- s.add_dependency(%q<rollbar>.freeze, [">= 0"])
291
- s.add_dependency(%q<sass-rails>.freeze, ["~> 5.0"])
292
- s.add_dependency(%q<sitemap_generator>.freeze, [">= 0"])
293
- s.add_dependency(%q<slack-notifier>.freeze, [">= 0"])
294
- s.add_dependency(%q<byebug>.freeze, [">= 0"])
295
- s.add_dependency(%q<better_errors>.freeze, [">= 0"])
296
- s.add_dependency(%q<binding_of_caller>.freeze, [">= 0"])
297
- s.add_dependency(%q<bullet>.freeze, [">= 0"])
298
245
  s.add_dependency(%q<semantic>.freeze, [">= 0"])
299
- s.add_dependency(%q<web-console>.freeze, ["~> 2.0"])
300
246
  s.add_dependency(%q<jeweler>.freeze, ["~> 2.3.2"])
301
247
  end
302
248
  else
303
- s.add_dependency(%q<carrierwave>.freeze, [">= 0"])
304
- s.add_dependency(%q<cloudinary>.freeze, [">= 0"])
305
- s.add_dependency(%q<geocoder>.freeze, [">= 0"])
306
- s.add_dependency(%q<faraday>.freeze, [">= 0"])
307
- s.add_dependency(%q<fog>.freeze, [">= 0"])
308
- s.add_dependency(%q<fog-aws>.freeze, [">= 0"])
309
- s.add_dependency(%q<hashie>.freeze, [">= 0"])
310
- s.add_dependency(%q<rack-canonical-host>.freeze, [">= 0"])
311
- s.add_dependency(%q<rack-ssl-enforcer>.freeze, [">= 0"])
312
- s.add_dependency(%q<rollbar>.freeze, [">= 0"])
313
- s.add_dependency(%q<sass-rails>.freeze, ["~> 5.0"])
314
- s.add_dependency(%q<sitemap_generator>.freeze, [">= 0"])
315
- s.add_dependency(%q<slack-notifier>.freeze, [">= 0"])
316
- s.add_dependency(%q<byebug>.freeze, [">= 0"])
317
- s.add_dependency(%q<better_errors>.freeze, [">= 0"])
318
- s.add_dependency(%q<binding_of_caller>.freeze, [">= 0"])
319
- s.add_dependency(%q<bullet>.freeze, [">= 0"])
320
249
  s.add_dependency(%q<semantic>.freeze, [">= 0"])
321
- s.add_dependency(%q<web-console>.freeze, ["~> 2.0"])
322
250
  s.add_dependency(%q<jeweler>.freeze, ["~> 2.3.2"])
323
251
  end
324
252
  end