{"id":19340,"library":"babel-preset-stage-3","title":"babel-preset-stage-3","description":"Babel preset that includes all stage 3 (candidate) ECMAScript proposal plugins. Version 6.24.1 is the last stable release; the package has been deprecated in favor of using individual plugins or preset-env. It was originally part of the Babel 6 ecosystem and is rarely updated. For modern projects, use @babel/preset-env with appropriate targets instead of stage presets.","status":"deprecated","version":"6.24.1","language":"javascript","source_language":"en","source_url":"https://github.com/babel/babel/tree/master/packages/babel-preset-stage-3","tags":["javascript"],"install":[{"cmd":"npm install babel-preset-stage-3","lang":"bash","label":"npm"},{"cmd":"yarn add babel-preset-stage-3","lang":"bash","label":"yarn"},{"cmd":"pnpm add babel-preset-stage-3","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Self-referential; the preset itself contains plugins like babel-plugin-transform-object-rest-spread, etc.","package":"babel-preset-stage-3","optional":false}],"imports":[{"note":"The preset is a function, not an object. Use as string or require default.","wrong":"import { presets } from 'babel-preset-stage-3'","symbol":"preset","correct":"module.exports = { presets: ['stage-3'] };"},{"note":"The module exports a function directly; no default export.","wrong":"require('babel-preset-stage-3').default","symbol":"default","correct":"require('babel-preset-stage-3')({ useBuiltIns: false })"},{"note":"Preset function returns an object; accessing .plugins is valid after call.","wrong":"const { plugins } = require('babel-preset-stage-3');","symbol":"plugins","correct":"const preset = require('babel-preset-stage-3'); console.log(preset.plugins);"}],"quickstart":{"code":"// .babelrc\n{\n  \"presets\": [\"stage-3\"]\n}\n\n// or via Node API\nconst babel = require('babel-core');\nbabel.transform('code', { presets: ['stage-3'] });\n\n// then compile\nnpx babel src --out-dir lib","lang":"javascript","description":"Basic setup of babel-preset-stage-3 in .babelrc and usage via Node API and CLI."},"warnings":[{"fix":"Use @babel/preset-env with appropriate targets or individual plugins like @babel/plugin-transform-object-rest-spread.","message":"Stage presets (including stage-3) are deprecated in Babel 7+.","severity":"deprecated","affected_versions":">=7.0.0"},{"fix":"Upgrade to Babel 7+ and replace with @babel/preset-env or specific plugins.","message":"Babel 6 is no longer maintained; babel-preset-stage-3 only works with Babel 6.","severity":"breaking","affected_versions":">=7.0.0"},{"fix":"Avoid mixing stage presets with preset-env that also includes those transforms. Prefer using only preset-env.","message":"The preset includes object rest/spread, async functions, etc. which may conflict with other presets or transform settings.","severity":"gotcha","affected_versions":">=0.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Use require('babel-preset-stage-3') directly, not require(...).default.","cause":"Incorrectly importing the preset as default export instead of calling it as a function.","error":"Error: Plugin 0 specified in \"base\" provided an invalid property of \"default\""},{"fix":"Run npm install --save-dev babel-preset-stage-3 and ensure Babel 6 is used.","cause":"The package wasn't installed or Babel version mismatch (stage-3 only works with Babel 6).","error":"Error: Cannot find module 'babel-preset-stage-3'"},{"fix":"Install and include babel-polyfill or babel-runtime in your setup.","cause":"Stage-3 preset includes async/await transform which requires regenerator runtime.","error":"ReferenceError: regeneratorRuntime is not defined"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}