Skip to content

bytecampio/babel-preset-modern-node

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

build dependencies devDependencies

license npm version npm downloads

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

About

Babel preset for modern node apps

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 92.8%
  • Shell 3.9%
  • Makefile 3.3%