JSPM

  • Created
  • Published
  • Downloads 3213
  • Score
    100M100P100Q119438F
  • License MIT

Electron supporting package to compile JS and CSS in Electron applications

Package Exports

  • electron-compile

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 (electron-compile) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

electron-compile

electron-compile provides compilers for common JavaScript and CSS alternative targets.

For JavaScript:

  • JavaScript ES6/ES7 (via Babel)
  • TypeScript
  • CoffeeScript

For CSS:

  • LESS
  • Sass/SCSS

How does it work?

Put this in your Electron app's app.ready:

app.on('ready', function() {
  require('electron-compile').init();
});

From then on, you can now simply include files directly in your HTML, no need for cross-compilation:

<head>
  <script src="main.coffee"></script>
  <link rel="stylesheet" type="text/css" href="main.less" />
</head>

or just require them in:

require('./mylib')   // mylib.ts

Does this work in node.js / io.js too?

The JavaScript compilers will register with module.register, but CSS of course won't

Babel keeps running on my ES5 source

Add 'use nobabel'; to the top of your file to opt-out of Babel compilation.

Hey, why doesn't this work in my main.js file?

Unfortunately, the very first file that you set up app.ready in must be written in ES5. Of course, you can always make this file as small as possible, or just require in a real file once you call init().