browserify-rails
This library adds CommonJS module support to Sprockets (via Browserify).
It let's you mix and match //= require directives and require() calls for including plain javascript files as well as modules.
- Manage JS modules with
npm - Serve assets with Sprockets
- Require modules with
require()(without separate//= requiredirectives) - Only build required modules
Getting Started
Add this line to your application's Gemfile:
gem 'hsume2-browserify-rails'
Create package.json in your Rails root:
{
"name": "something",
"devDependencies" : {
"browserify": "2.13.x",
"module-deps": "1.7.x"
},
"license": "MIT",
"engines": {
"node": ">= 0.6"
}
}
[TODO: Write a Rails generator for this]
Then run:
npm install
Then start writing CommonJS, and everything will magically work!:
// foo.js
module.exports = function (n) { return n * 11 }
// application.js
var foo = require('./foo');
console.log(foo(12));
Coffeescript
If you want to use coffeescript files, add coffeeify as a dependency on package.json:
{
"name": "something",
"devDependencies" : {
"browserify": "2.13.x"
"coffeeify": "0.6.x"
},
"license": "MIT",
"engines": {
"node": ">= 0.6"
}
}
Contributing
Pull requests appreciated.
