heroku_and_production_mode_friendly

This commit is contained in:
Israel Ogbole 2016-07-08 00:39:52 +01:00
parent 1f5e20dd1a
commit e54acddc52
7 changed files with 117 additions and 20 deletions

1
.ruby-version Normal file
View File

@ -0,0 +1 @@
2.2.3

View File

@ -14,6 +14,10 @@ gem 'coffee-rails', '~> 4.1.0'
# See https://github.com/rails/execjs#readme for more supported runtimes # See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby # gem 'therubyracer', platforms: :ruby
gem "font-awesome-rails"
gem 'bootstrap-sass', '~> 3.3.6'
# Use jquery as the JavaScript library # Use jquery as the JavaScript library
gem 'jquery-rails' gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks # Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks

View File

@ -37,8 +37,13 @@ GEM
thread_safe (~> 0.3, >= 0.3.4) thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1) tzinfo (~> 1.1)
arel (6.0.3) arel (6.0.3)
autoprefixer-rails (6.3.6.1)
execjs
binding_of_caller (0.7.2) binding_of_caller (0.7.2)
debug_inspector (>= 0.0.1) debug_inspector (>= 0.0.1)
bootstrap-sass (3.3.6)
autoprefixer-rails (>= 5.2.1)
sass (>= 3.3.4)
builder (3.2.2) builder (3.2.2)
byebug (8.2.4) byebug (8.2.4)
coffee-rails (4.1.1) coffee-rails (4.1.1)
@ -52,6 +57,8 @@ GEM
debug_inspector (0.0.2) debug_inspector (0.0.2)
erubis (2.7.0) erubis (2.7.0)
execjs (2.6.0) execjs (2.6.0)
font-awesome-rails (4.6.3.1)
railties (>= 3.2, < 5.1)
globalid (0.3.6) globalid (0.3.6)
activesupport (>= 4.1.0) activesupport (>= 4.1.0)
i18n (0.7.0) i18n (0.7.0)
@ -143,8 +150,10 @@ PLATFORMS
ruby ruby
DEPENDENCIES DEPENDENCIES
bootstrap-sass (~> 3.3.6)
byebug byebug
coffee-rails (~> 4.1.0) coffee-rails (~> 4.1.0)
font-awesome-rails
jbuilder (~> 2.0) jbuilder (~> 2.0)
jquery-rails jquery-rails
rails (= 4.2.4) rails (= 4.2.4)

View File

@ -11,6 +11,8 @@
// about supported directives. // about supported directives.
// //
//= require jquery //= require jquery
//= require bootstrap-sprockets
//= require jquery_ujs //= require jquery_ujs
//= require turbolinks //= require turbolinks
@ -24,8 +26,6 @@
//= require js/flot/curvedLines.js //= require js/flot/curvedLines.js
//= require js/flot/jquery.flot.resize.js //= require js/flot/jquery.flot.resize.js
//= require js/bootstrap.min.js
//= require js/progressbar/bootstrap-progressbar.min.js //= require js/progressbar/bootstrap-progressbar.min.js
//= require js/icheck/icheck.min.js //= require js/icheck/icheck.min.js

View File

@ -1,5 +1,5 @@
/* /*
* This is a manifest file that'll be compiled into application.css, which will include all the files * This is a manifest file that'll be compiled into application, which will include all the files
* listed below. * listed below.
* *
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
@ -9,22 +9,23 @@
* compiled file so the styles you add here take precedence over styles defined in any styles * compiled file so the styles you add here take precedence over styles defined in any styles
* defined in the other CSS/SCSS files in this directory. It is generally better to create a new * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
* file per style scope. * file per style scope.
* ** * require fonts/css/font-awesome.min
*= require_tree .
*= require_self *
*= require css/bootstrap.min.css
*= require fonts/css/font-awesome.min.css
*= require css/animate.min.css
*= require css/custom.css
*= require css/maps/jquery-jvectormap-2.0.3.css
*= require css/icheck/flat/green.css
*= require css/floatexamples.css
*= require css/normalize.css
*= require css/nprogress.css
*= require css/ion.rangeSlider.css
*= require css/ion.rangeSlider.skinFlat.css
*/ */
@import "bootstrap-sprockets";
@import "bootstrap";
@import "font-awesome";
@import "css/animate.min";
@import "css/custom";
@import "css/icheck/flat/green";
@import "css/floatexamples";
@import "css/normalize";
@import "css/ion.rangeSlider";
@import "css/ion.rangeSlider.skinFlat";
@import "pace";

View File

@ -0,0 +1,76 @@
.pace {
-webkit-pointer-events: none;
pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
.pace-inactive {
display: none;
}
.pace .pace-progress {
background: #29d;
position: fixed;
z-index: 2000;
top: 0;
right: 100%;
width: 100%;
height: 2px;
}
.pace .pace-progress-inner {
display: block;
position: absolute;
right: 0px;
width: 100px;
height: 100%;
box-shadow: 0 0 10px #29d, 0 0 5px #29d;
opacity: 1.0;
-webkit-transform: rotate(3deg) translate(0px, -4px);
-moz-transform: rotate(3deg) translate(0px, -4px);
-ms-transform: rotate(3deg) translate(0px, -4px);
-o-transform: rotate(3deg) translate(0px, -4px);
transform: rotate(3deg) translate(0px, -4px);
}
.pace .pace-activity {
display: block;
position: fixed;
z-index: 2000;
top: 15px;
right: 15px;
width: 14px;
height: 14px;
border: solid 2px transparent;
border-top-color: #29d;
border-left-color: #29d;
border-radius: 10px;
-webkit-animation: pace-spinner 400ms linear infinite;
-moz-animation: pace-spinner 400ms linear infinite;
-ms-animation: pace-spinner 400ms linear infinite;
-o-animation: pace-spinner 400ms linear infinite;
animation: pace-spinner 400ms linear infinite;
}
@-webkit-keyframes pace-spinner {
0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}
@-moz-keyframes pace-spinner {
0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
}
@-o-keyframes pace-spinner {
0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
}
@-ms-keyframes pace-spinner {
0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
}
@keyframes pace-spinner {
0% { transform: rotate(0deg); transform: rotate(0deg); }
100% { transform: rotate(360deg); transform: rotate(360deg); }
}

View File

@ -22,14 +22,20 @@ Rails.application.configure do
# Disable serving static files from the `/public` folder by default since # Disable serving static files from the `/public` folder by default since
# Apache or NGINX already handles this. # Apache or NGINX already handles this.
config.serve_static_files = ENV['RAILS_SERVE_STATIC_FILES'].present? #config.serve_static_files = ENV['RAILS_SERVE_STATIC_FILES'].present?
# change this to true to load images from the public folder in production for non-NGNIX setup, like PUMA
config.serve_static_files = true
# Compress JavaScripts and CSS. # Compress JavaScripts and CSS.
config.assets.js_compressor = :uglifier config.assets.js_compressor = :uglifier
# config.assets.css_compressor = :sass # config.assets.css_compressor = :sass
# Do not fallback to assets pipeline if a precompiled asset is missed. # Do not fallback to assets pipeline if a precompiled asset is missed.
config.assets.compile = false #config.assets.compile = false
# feel free to change it back to false, but it had to be true to make glyphs work in my case.
# I am not really sure why that is at the moment
config.assets.compile = true
# Asset digests allow you to set far-future HTTP expiration dates on all assets, # Asset digests allow you to set far-future HTTP expiration dates on all assets,
# yet still be able to expire them through the digest params. # yet still be able to expire them through the digest params.