es-runtime

ensure @babel/(runtime && polyfill) are installed

Usage no npm install needed!

<script type="module">
  import esRuntime from 'https://cdn.skypack.dev/es-runtime';
</script>

README

Build status npm version dependencies License

es-runtime simply tries to ensure @babel/(runtime && polyfill) are installed correctly. Why is this useful? If you still use Node.js v4, then it's a no brainer, but if you use Node.js v6+, then it's for a simpler setup.

install

$ npm i es-runtime

or

$ yarn add es-runtime

api

There is no API, but if you use require( "es-runtime" ) or import "es-runtime", then @babel/polyfill will be used automatically.

usage

es-runtime can be simply used by calling the es-runtime CLI, and it is recommended to add this to your postinstall, bootstrap or setup scripts within package.json, but to ensure everything works, you must:

  1. Use one of (or both) in your .babelrc(.js) config:

    • @babel/plugin-transform-runtime
    • @babel/preset-env with useBuiltIns enabled
  2. Transpile your module(s) with Babel 7+

  3. Ensure es-runtime is in your package's dependencies field, NOT devDependencies

  4. Try to always use the latest version of the Node.js release your using (e.g. 4.8 instead of 4.0)

  5. NPM 3+, or Yarn are recommended, and tested with, so no guarantee whatsoever that others work

  6. Only use this with directories that have a package.json, otherwise it will throw an error

options

The following options are supported (there are no short flags):

  • --silent disable's the debug message's (recommended if you use es-runtime in your package.json)
  • --module manually set the module directory (must be a path from the current working directory)
  • --save will let npm install update your package.json and the lock-file, otherwise they are restored
  • --yarn will use yarn add instead of npm install

optional

If you want to set a required version for one of (or all):

  • @babel/polyfill
  • @babel/runtime
  • core-js
  • regenerator-runtime

As usual, just set it in your package's dependencies field and es-runtime will try to install that version instead.