Babel preset for modern node apps
JavaScript Shell Makefile
Latest commit e2e215d Nov 2, 2016 @michaelcontento committed on GitHub Add deprecation notice

README.md

babel-preset-modern-node

Babel preset for building modern node apps with the least amount of transformations as possible.

build dependencies devDependencies

license npm version npm downloads

Deprecated - No longer maintained

My focus has left the node ecosystem and also the awesome babel-team came up with babel-preset-env. So please do yourself a favor and switch over to babel-preset-env.

Thank you for your patience and using this module in the first place!

Installation

npm install --save-dev babel-preset-modern-node

Usage

Simply use this preset as any other. Following options can be passed to configure babel-preset-modern-node to your taste:

  • Set loose mode optimizations (default: false)
    • loose = true|false
  • Module loader to use (default: commonjs)
    • modules = (false|commonjs|amd|umd|systemjs)
  • Min node version compatibility (default: process.versions.node)
    • version = "5.10.2"

Via .babelrc (recommended)

{
  "presets": ["modern-node"]
}

Or:

{
  "presets": [["modern-node", { "loose": true, ... }]]
}

Via CLI

babel script.js --presets modern-node

Via Node API

require('babel-core').transform('code', {
  presets: ['modern-node'],
})

Or:

require('babel-core').transform('code', {
  presets: [['modern-node', { "loose": true, ... }]],
})

Compatibility

This preset currently supports ES2015 and ES2016 support for all minor node versions starting at v0.12.

Notes on Array.includes

This preset does not modify the global space / prototypes! Due to this we're not able to fully support ES2016's Array.includes see here for more details.

Special extras

  1. If you project contains a package.json the super global __VERSION__ will be set accordingly
  2. Strict mode will be enabled
  3. Restricted keywords will always be quoted