aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--Gemfile3
-rw-r--r--Gemfile.lock5
-rw-r--r--app/assets/javascripts/es6_browserified/test.js7
-rw-r--r--config/application.rb3
-rw-r--r--config/initializers/assets.rb2
-rw-r--r--package.json13
7 files changed, 34 insertions, 2 deletions
diff --git a/.gitignore b/.gitignore
index 31b5d928c..3a8d7d6d2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -28,3 +28,6 @@ coverage
# IDE
.idea
+
+# Ignore node modules
+/node_modules
diff --git a/Gemfile b/Gemfile
index ed8cb52ff..b6c443e22 100644
--- a/Gemfile
+++ b/Gemfile
@@ -10,6 +10,9 @@ gem 'uglifier', '~> 2.7.2'
# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'
+# ES6 powa
+gem 'browserify-rails'
+
# Use jquery as the JavaScript library
gem 'jquery-rails', '~> 3.1.4' # Update to v4 for Rails 4.2
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
diff --git a/Gemfile.lock b/Gemfile.lock
index 631c0bfbe..58cccc276 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -90,6 +90,8 @@ GEM
binding_of_caller (0.7.2)
debug_inspector (>= 0.0.1)
breadcrumbs_on_rails (2.3.0)
+ browserify-rails (1.1.0)
+ railties (>= 4.0.0, < 5.0)
builder (3.2.2)
calendar_helper (0.2.5)
open4
@@ -574,6 +576,7 @@ DEPENDENCIES
better_errors
binding_of_caller
breadcrumbs_on_rails
+ browserify-rails
calendar_helper (= 0.2.5)
capistrano (= 2.13.5)
capistrano-ext
@@ -674,4 +677,4 @@ DEPENDENCIES
will_paginate-bootstrap (~> 1.0.1)
BUNDLED WITH
- 1.12.5
+ 1.13.5
diff --git a/app/assets/javascripts/es6_browserified/test.js b/app/assets/javascripts/es6_browserified/test.js
new file mode 100644
index 000000000..eff33368a
--- /dev/null
+++ b/app/assets/javascripts/es6_browserified/test.js
@@ -0,0 +1,7 @@
+class Welcome {
+ constructor() {
+ alert('Yo bitch');
+ }
+}
+
+// new Welcome();
diff --git a/config/application.rb b/config/application.rb
index 52da477a5..b90950607 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -26,5 +26,8 @@ module ChouetteIhm
# The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
# config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
config.i18n.default_locale = :fr
+
+ # Configure Browserify to use babelify to compile ES6
+ config.browserify_rails.commandline_options = "-t [ babelify --presets [ es2015 ] ]"
end
end
diff --git a/config/initializers/assets.rb b/config/initializers/assets.rb
index d2f4ec33a..928236c4a 100644
--- a/config/initializers/assets.rb
+++ b/config/initializers/assets.rb
@@ -5,4 +5,4 @@ Rails.application.config.assets.version = '1.0'
# Precompile additional assets.
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
-# Rails.application.config.assets.precompile += %w( search.js )
+Rails.application.config.assets.precompile += %w( es6_browserified/*.js )
diff --git a/package.json b/package.json
new file mode 100644
index 000000000..a64f25f36
--- /dev/null
+++ b/package.json
@@ -0,0 +1,13 @@
+{
+ "name": "something",
+ "dependencies": {
+ "babel-preset-es2015": "^6.18.0",
+ "babelify": "^7.3.0",
+ "browserify": "^10.2.6",
+ "browserify-incremental": "^3.1.1"
+ },
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.10"
+ }
+}