babel-preset-meteor
raw JSON →Babel preset for Meteor's build system, enabling ES2015+ syntax and features supported by Meteor's runtime. Current stable version is 8.0.3. This preset is specifically designed for Meteor plugins and applications, providing transforms and polyfills that align with Meteor's version of Node.js and browser targets. Unlike generic presets like @babel/preset-env, babel-preset-meteor includes Meteor-specific transforms (e.g., object-assign, regenerator, dynamic import) and avoids unnecessary transformations already handled by Meteor's compilation pipeline. Release cadence is tied to Meteor releases; note that this package has been in maintenance mode since Meteor 2.0, with newer projects typically using Meteor's built-in Babel configuration or @babel/preset-env directly.
Common errors
error Error: Cannot find module 'babel-preset-meteor' ↓
error Error: Requires Babel "^7.0.0-0", but was loaded with "6.x.x" ↓
error ReferenceError: regeneratorRuntime is not defined ↓
Warnings
breaking babel-preset-meteor 8.x requires Babel 7 (i.e., @babel/core). It is incompatible with older babel-core 6.x. ↓
deprecated This preset is in maintenance mode. Meteor's official recommendation for new projects is to use @babel/preset-env with appropriate targets. ↓
gotcha The preset automatically includes @babel/plugin-transform-runtime. Ensure @babel/runtime is installed as a dependency. ↓
Install
npm install babel-preset-meteor yarn add babel-preset-meteor pnpm add babel-preset-meteor Imports
- default preset wrong
{ "presets": ["babel-preset-meteor"] }correct{ "presets": ["meteor"] } - Node API wrong
const babel = require('babel-core'); babel.transform(code, { presets: ['meteor'] });correctconst babel = require('@babel/core'); babel.transform(code, { presets: ['meteor'] }); - CLI usage wrong
babel script.js --presets babel-preset-meteorcorrectbabel script.js --presets meteor
Quickstart
// Install: npm install --save-dev babel-preset-meteor
// Create .babelrc in project root, or in a package directory
{
"presets": ["meteor"]
}
// Then run Babel on your files:
// babel src/ --out-dir lib --presets meteor