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
@@ -1,13 +0,0 @@
1
- .img-block {
2
- width: 100%;
3
- }
4
-
5
- @each $breakpoint in map-keys($grid-breakpoints) {
6
- @include media-breakpoint-up($breakpoint) {
7
- .img-block-#{$breakpoint}-up { width: 100%; display: block }
8
- }
9
-
10
- @include media-breakpoint-down($breakpoint) {
11
- .img-block-#{$breakpoint}-down { width: 100%; display: block }
12
- }
13
- }
@@ -1,3 +0,0 @@
1
- .progress.small {
2
- height: 0.4rem;
3
- }
@@ -1,30 +0,0 @@
1
- .selectize-input, .selectize-input.has-items {
2
- padding: 0.5rem 0.75rem;
3
- }
4
-
5
- .selectize-control.multi .selectize-input > div {
6
- background: #98A8BB;
7
- color: #FFF;
8
- font-size: 0.9em;
9
- }
10
-
11
- .selectize-control::before {
12
- -moz-transition: opacity 0.2s;
13
- -webkit-transition: opacity 0.2s;
14
- transition: opacity 0.2s;
15
- content: ' ';
16
- z-index: 2;
17
- position: absolute;
18
- display: block;
19
- top: 12px;
20
- right: 34px;
21
- width: 16px;
22
- height: 16px;
23
- background: url(/images/spinner.gif);
24
- background-size: 16px 16px;
25
- opacity: 0;
26
- }
27
-
28
- .selectize-control.loading::before {
29
- opacity: 1.0;
30
- }
@@ -1,24 +0,0 @@
1
- .table th {
2
- border-top: 0;
3
- margin-bottom: 0;
4
- }
5
-
6
- .table.no-top-border {
7
- tr:first-child td {
8
- border-top: 0;
9
- }
10
- }
11
-
12
- .table.table-flush {
13
- tr {
14
- td, th {
15
- &:first-child { padding-left: 0; }
16
- }
17
- }
18
-
19
- tr {
20
- td, th {
21
- &:last-child { padding-right: 0; }
22
- }
23
- }
24
- }
@@ -1,3 +0,0 @@
1
- .shadowed {
2
- box-shadow: 0 0 3px lighten($color-grey2, 50%);
3
- }
@@ -1,4 +0,0 @@
1
- .turbolinks-progress-bar {
2
- height: 2px;
3
- background-color: $brand-primary;
4
- }
@@ -1,116 +0,0 @@
1
- @import url('https://fonts.googleapis.com/css?family=Lato:400,900|Open+Sans:400,700');
2
-
3
- .text-no-underline {
4
- text-decoration: none !important;
5
- }
6
-
7
- .text-underline {
8
- text-decoration: underline !important;
9
- }
10
-
11
- .text-nowrap {
12
- white-space: nowrap;
13
- }
14
-
15
- .text-black {
16
- color: #000;
17
- &:hover {
18
- color: #000;
19
- }
20
- }
21
-
22
- .text-grey {
23
- color: $color-grey;
24
- }
25
-
26
- .text-grey2 {
27
- color: $color-grey2;
28
- }
29
-
30
- .text-grey3 {
31
- color: $color-grey3;
32
- }
33
-
34
- .text-grey4 {
35
- color: $color-grey4;
36
- }
37
-
38
- .text-grey5 {
39
- color: $color-grey5;
40
- }
41
-
42
- .text-grey6 {
43
- color: $color-grey6;
44
- }
45
-
46
- .anchor {
47
- display: block;
48
- position: relative;
49
- top: -70px;
50
- visibility: hidden;
51
- }
52
-
53
- body {
54
- font-family: 'Open Sans', sans-serif;
55
- font-size: 14px;
56
- line-height: 24px;
57
- }
58
-
59
- small {
60
- font-size: 10px;
61
- line-height: 18px;
62
- }
63
-
64
- p.lead {
65
- font-size: 18px;
66
- line-height: 24px;
67
- }
68
-
69
- h1 {
70
- font-family: 'Lato', sans-serif;
71
- font-weight: 800;
72
- font-size: 52px;
73
- line-height: 67px;
74
- // font-size: 40px;
75
- // line-height: 48px;
76
- }
77
-
78
- h2 {
79
- font-family: 'Lato', sans-serif;
80
- font-weight: 800;
81
- font-size: 40px;
82
- line-height: 48px;
83
- // font-size: 28px;
84
- // line-height: 34px;
85
- }
86
-
87
- h3 {
88
- font-family: 'Lato', sans-serif;
89
- font-weight: 800;
90
- // font-size: 28px;
91
- // line-height: 34px;
92
- font-size: 34px;
93
- line-height: 42px;
94
- }
95
-
96
- h4 {
97
- font-family: 'Lato', sans-serif;
98
- font-weight: 900;
99
- // font-size: 20px;
100
- // line-height: 26px;
101
- font-size: 28px;
102
- line-height: 34px;
103
- }
104
-
105
- h5 {
106
- font-family: 'Lato', sans-serif;
107
- font-weight: 700;
108
- text-transform: uppercase;
109
- font-size: 20px;
110
- line-height: 26px;
111
- }
112
-
113
- h6 {
114
- font-family: 'Lato', sans-serif;
115
- font-weight: 700;
116
- }
@@ -1,76 +0,0 @@
1
- const path = require('path');
2
- const fs = require('fs');
3
- const webpack = require("webpack");
4
- const ExtractTextPlugin = require("extract-text-webpack-plugin");
5
-
6
- const prod = process.argv.indexOf('-p') !== -1;
7
- const css_output_template = "stylesheets/[name]-compiled.css";
8
- const js_output_template = "javascripts/[name]-compiled.js";
9
-
10
- module.exports = {
11
- context: __dirname + "/app/webpack",
12
- entry: {
13
- pack: ["./javascripts/pack.js", "./stylesheets/pack.scss"]
14
- },
15
- devtool: 'source-map',
16
- plugins: [new webpack.ProvidePlugin({ $: "jquery", jQuery: "jquery" })],
17
- output: {
18
- path: __dirname + "/app/assets",
19
- filename: js_output_template,
20
- },
21
- module: {
22
- loaders: [
23
- {
24
- test: /\.js$/,
25
- exclude: /node_modules/,
26
- loader: 'babel-loader',
27
- query: {
28
- presets: ['es2015']
29
- }
30
- },
31
- // {
32
- // test: /\.(css|scss|sass)$/,
33
- // include: /node_modules/,
34
- // // loader: ExtractTextPlugin.extract("css!sass")
35
- // // loader: ExtractTextPlugin.extract('style-loader!css-loader!sass-loader')
36
- // loaders: ["style-loader", "css-loader", "sass-loader"]
37
- // },
38
- {
39
- test: /\.scss$/,
40
- loader: ExtractTextPlugin.extract({fallback: "style-loader", use: "css-loader!sass-loader"})
41
- }
42
- ]
43
- },
44
- plugins: [
45
- new ExtractTextPlugin(css_output_template),
46
-
47
- function() {
48
- // delete previous outputs
49
- this.plugin("compile", function() {
50
- let basepath = __dirname + "/public";
51
- // let paths = ["/javascripts", "/stylesheets"];
52
- let paths = ["/stylesheets"];
53
-
54
- for (let x = 0; x < paths.length; x++) {
55
- const asset_path = basepath + paths[x];
56
-
57
- fs.readdir(asset_path, function(err, files) {
58
- if (files === undefined) {
59
- return;
60
- }
61
-
62
- for (let i = 0; i < files.length; i++) {
63
- fs.unlinkSync(asset_path + "/" + files[i]);
64
- }
65
- });
66
- }
67
- });
68
-
69
- // output the fingerprint
70
- // this.plugin("done", function(stats) {
71
- // let output = "ASSET_FINGERPRINT = \"" + stats.hash + "\""
72
- // fs.writeFileSync("config/initializers/fingerprint.rb", output, "utf8");
73
- // });
74
- }
75
- ]
76
- };