Package Exports
- js2coffee
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (js2coffee) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Compile JavaScript into CoffeeScript.
This 2.0 release is a complete rewrite featuring a better parser (Esprima). See what's new in 2.0 for an overview of new features and consult the migration guide for info on updating from 0.x.
Install
Available on npm and bower.
npm install --global js2coffee
js2coffee --helpAlso available via CDN (window.js2coffee):
https://cdn.rawgit.com/js2coffee/js2coffee/v2.1.0/dist/js2coffee.js
Command line
The command line utility accepts both filenames or stdin.
$ js2coffee file.js [file2.js ...]
$ cat file.js | js2coffeeJavaScript API
Available via npm (require('js2coffee')), or via CDN in the browser (as window.js2coffee):
result = js2coffee.build(source);
result.code // code string
result.ast // transformed AST
result.map // source map
result.warnings // array of warningsErrors are in this format:
catch (e) {
e.message // "index.js:3:1: Unexpected INDENT\n\n 3 var\n ---^"
e.description // "Unexpected INDENT"
e.start // { line: 1, column: 4 }
e.end // { line: 1, column: 10 }
e.sourcePreview // '...'
}Warnings are in this format:
result.warnings.forEach((warn) => {
warn.description // "Variable 'x' defined twice
warn.start // { line: 1, column: 4 }
warn.end // { line: 1, column: 9 }
warn.filename // "index.js"
})Docs
Migration guide - guide for migrating from 0.x.
Hacking guide - want to contribute? here are tips to get you started.
AST format - technical description of the CoffeeScript AST format.
Special cases - a list of edge cases that js2coffee accounts for.
Compatibility mode - list of tweaks that compatibility mode (
--compat) addresses.Goals - outline of the project's goals.
Specs - examples of how JavaScript compiles to CoffeeScript.
Thanks
js2coffee © 2012+, Rico Sta. Cruz. Released under the MIT License.
Authored by Rico Sta. Cruz with help from co-maintainers and contributors (list).
Maintainers:
Rico Sta. Cruz (@rstacruz) — ricostacruz.com · twitter @rstacruz
Anton Wilhelm (@timaschew) — twitter @timaschew
Benjamin Lupton (@balupton) — balupton.com · twitter @balupton
