babel-preset-node
raw JSON → 5.1.1 verified Sat Apr 25 auth: no javascript maintenance
Babel preset that automatically targets the latest Node.js version by including only the necessary transforms. Version 5.1.1 is stable but unmaintained; the preset requires bluebird as a peer dependency. Unlike generic babel-preset-env, this preset is Node-specific and historically was used to avoid polyfills for unsupported Node features. No longer actively developed; prefer @babel/preset-env with node target.
Common errors
error Error: Module "babel-preset-node" was resolved but "babel-preset-node" doesn't export a Babel preset. ↓
cause Using an older version that exports plugins instead of a preset.
fix
Upgrade to version 5.x and use presets array: { presets: ['babel-preset-node'] }.
error Cannot find module 'bluebird' ↓
cause Missing peer dependency bluebird.
fix
Install bluebird: npm install --save bluebird.
Warnings
deprecated This package is no longer maintained. Use @babel/preset-env with 'targets.node' instead. ↓
fix Replace with @babel/preset-env: npm install --save-dev @babel/preset-env and configure { presets: [['@babel/preset-env', { targets: { node: 'current' } }]] }.
gotcha Installing this preset pulls in bluebird as a peer dependency, which may add unnecessary polyfills for Node.js 6+. ↓
fix Consider omitting bluebird or switching to @babel/preset-env which does not impose peer deps.
breaking Version 5.x changed from plugin-based to preset-based configuration. Existing configs with 'plugins: [require("babel-preset-node/plugins")]' may break. ↓
fix Update to use 'presets: ["babel-preset-node"]' string syntax.
Install
npm install babel-preset-node yarn add babel-preset-node pnpm add babel-preset-node Imports
- default wrong
import presets from 'babel-preset-node'correctmodule.exports = { presets: ['babel-preset-node'] } - preset wrong
module.exports = { presets: [require('babel-preset-node')] }correctmodule.exports = { presets: ['babel-preset-node'] } - plugins wrong
import preset from 'babel-preset-node'correctconst preset = require('babel-preset-node');
Quickstart
// .babelrc
{
"presets": ["babel-preset-node"]
}
// or babel.config.js
module.exports = {
presets: [
['babel-preset-node', { target: 'current' }]
]
};