{"id":19258,"library":"babel-preset-backpack","title":"babel-preset-backpack","description":"Babel preset for Backpack projects, version 0.8.4 (final release, 2019). It configures Babel to target Node.js environments with ES6+ transpilation. Used internally by Backpack, but can be used independently. Key differentiators: includes specific plugins for Backpack's needs (async to generator, object rest/spread with useBuiltIns). Maintenance mode since 2019; no updates for Babel 8 or newer Node versions. Alternatives: @babel/preset-env.","status":"maintenance","version":"0.8.4","language":"javascript","source_language":"en","source_url":"https://github.com/palmerhq/backpack","tags":["javascript","babel","es6","node","backpack"],"install":[{"cmd":"npm install babel-preset-backpack","lang":"bash","label":"npm"},{"cmd":"yarn add babel-preset-backpack","lang":"bash","label":"yarn"},{"cmd":"pnpm add babel-preset-backpack","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Babel core required for preset to function","package":"@babel/core","optional":true},{"reason":"Used by preset for object rest/spread transpilation","package":"@babel/plugin-proposal-object-rest-spread","optional":false},{"reason":"Used by preset for async/await transpilation","package":"@babel/plugin-transform-async-to-generator","optional":false}],"imports":[{"note":"Use as a string in Babel config; direct require is unnecessary.","wrong":"require('babel-preset-backpack')","symbol":"babel-preset-backpack","correct":"module.exports = { presets: ['backpack'] }"},{"note":"Option name is camelCase, not kebab-case.","wrong":"use-built-ins","symbol":"useBuiltIns","correct":"{ presets: [['backpack', { useBuiltIns: 'entry' }]] }"},{"note":"Direct import is possible but not standard; prefer string reference in Babel config.","wrong":null,"symbol":"default","correct":"import preset from 'babel-preset-backpack' (but not recommended)"}],"quickstart":{"code":"// .babelrc\n{\n  \"presets\": [\"backpack\"]\n}\n\n// or with options\n{\n  \"presets\": [\n    [\"backpack\", { \"useBuiltIns\": \"entry\" }]\n  ]\n}\n\n// install: npm install --save-dev babel-preset-backpack @babel/core @babel/plugin-proposal-object-rest-spread @babel/plugin-transform-async-to-generator","lang":"javascript","description":"Shows how to configure babel-preset-backpack in a .babelrc file, with or without options, and includes the required install command."},"warnings":[{"fix":"Use @babel/core@^7.0.0 and ensure no Babel 6 packages are present.","message":"Requires @babel/core 7.x; incompatible with Babel 6.x and 8.x.","severity":"gotcha","affected_versions":">=0.8.0"},{"fix":"Migrate to @babel/preset-env for modern projects.","message":"This preset is effectively unmaintained since 2019. Backpack itself is no longer actively developed.","severity":"deprecated","affected_versions":">=0.8.0"},{"fix":"Upgrade to 0.8.1 or later for compatibility with Babel 7 final releases.","message":"Version 0.8.0 introduced breaking changes moving from Babel 6 to Babel 7, and Webpack 3 to 4.","severity":"breaking","affected_versions":">=0.8.0 <0.8.1"},{"fix":"Use core-js or @babel/polyfill with useBuiltIns option if targeting older Node versions.","message":"Preset assumes Object.assign is available or polyfilled; does not include a polyfill itself.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"If using Webpack <4, add json-loader explicitly to your Webpack config.","message":"Version 0.8.2 removed json-loader dependency, which may break Webpack configs that rely on it.","severity":"breaking","affected_versions":">=0.8.2"},{"fix":"If you need to replicate behavior, manually add the plugin to your Babel config.","message":"Preset includes transform-object-rest-spread (deprecated in Babel 7); use @babel/plugin-proposal-object-rest-spread instead.","severity":"deprecated","affected_versions":">=0.8.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run: npm install --save-dev @babel/core","cause":"Babel core is a required peer dependency of babel-preset-backpack and must be installed explicitly.","error":"Error: Cannot find module '@babel/core'"},{"fix":"Upgrade babel-preset-backpack to >=0.8.1 which supports Babel 7 final, or use @babel/preset-env instead.","cause":"Preset uses plugins that may require older Babel 7 beta versions; using Babel 7 stable with preset 0.8.0 or 0.8.1 may cause incompatibilities.","error":"SyntaxError: Unexpected token: punc (.)"},{"fix":"Use the string 'backpack' in your Babel configuration (.babelrc, babel.config.js, etc.).","cause":"Attempting to import babel-preset-backpack directly via require() in a JavaScript file rather than referencing it as a string in Babel config.","error":"Module build failed: Error: Plugin/Preset files are not allowed to export objects, only functions."},{"fix":"Specify core-js version in Babel config: { presets: [['backpack', { useBuiltIns: 'usage', corejs: 3 }]] } or install core-js@2.","cause":"Preset does not set a core-js version explicitly; Babel uses default core-js version 2.","error":"WARNING: We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x."}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}