@cypress/coffeeify
v1.0.0
Published
browserify plugin for coffee-script with support for mixed .js and .coffee files
Downloads
18
Maintainers
Readme
coffeeify
CoffeeScript browserify transform. Mix and match .coffee
and .js
files in the same project.
Example
Given some files written in a mix of js
and coffee
:
foo.coffee:
console.log require './bar.js'
bar.js:
module.exports = require('./baz.coffee')(5)
baz.coffee:
module.exports = (n) -> n ** n
Install coffeeify into your app:
$ npm install coffeeify
When you compile your app, just pass -t coffeeify
to browserify:
$ browserify -t coffeeify foo.coffee > bundle.js
$ node bundle.js
3125
You can omit the .coffee
extension from your requires if you add the extension to browserify's module extensions:
module.exports = require('./baz')(5)
$ browserify -t coffeeify --extension=".coffee" foo.coffee > bundle.js
$ node bundle.js
3125
You can also pass options to the CoffeeScript compiler:
$ browserify -t [ coffeeify --bare false --header true ] --extension=".coffee" foo.coffee
..
// Generated by CoffeeScript 1.10.0
(function() {
console.log(require('./bar.js'));
}).call(this);
..
Options
Name | Default | Description
-----------|-----------|-------------------------------------------------------------------------------------------
sourceMap | null
| Generate source maps, deteremined from browserify's --debug
option if not set.
bare | true
| Omit the (function(){ .. }).call(this);
wrapper.
header | false
| Include the // Generated by CoffeeScript <version>
header in every file processed.
When using browserify programatically options can be passed as an object, example:
browserify = require 'browserify'
coffeeify = require 'coffeeify'
bundle = browserify
extensions: ['.coffee']
bundle.transform coffeeify,
bare: false
header: true
bundle.add 'foo.coffee'
bundle.bundle (error, result) ->
throw error if error?
process.stdout.write result
Install
With npm do:
npm install coffeeify
License
MIT