Is babel-preset-es2015 still maintained?
No — babel-preset-es2015 stopped being maintained around April 2017. babel-preset-es2015's own maintainers named @babel/preset-env as the successor.
- Status
- No longer maintained
- Last maintained
- April 2017
- Use instead
@babel/preset-env— on npm- Succession
- Successor named by the maintainers
- Drop-in
- no — expect code changes
- Confidence
- high
What should I use instead of babel-preset-es2015?
babel-preset-es2015's own maintainers named @babel/preset-env as the successor. @babel/preset-env is not a drop-in replacement, so expect to change call sites.
How to migrate from babel-preset-es2015 to @babel/preset-env
Replace the preset with @babel/preset-env and declare targets through a browserslist config or the preset's targets option; with no targets set it behaves roughly like the old es2015 preset.
Why babel-preset-es2015 is on this list
Babel replaced its year-based presets with a single preset that compiles according to the browsers and Node versions you actually target. babel-preset-es2015's last release was 6.24.1 in April 2017 and it is deprecated on npm with a notice from the Babel team recommending preset-env; it was not carried forward into Babel 7, where the package is @babel/preset-env. Targeting real environments usually produces smaller output than compiling everything down to ES5.
The succession is settled: primary sources agree and the ecosystem has already moved.
babel-preset-es2015 alternatives
The dataset lists no second option: @babel/preset-env is where the ecosystem went, and nothing else has meaningful adoption.
Check your own project for babel-preset-es2015
npx dead-deps --all --min-state unmaintained
Run that in the directory holding your lockfile. If babel-preset-es2015 is anywhere in your tree — a direct dependency or buried under something else — it appears in the report with this verdict, this successor and the same evidence links, alongside anything else that has stopped moving. Nothing is uploaded; the scan reads your lockfile locally and queries public registry metadata.
Exit code 1 means something was flagged, which makes npx dead-deps --min-state deprecated usable as a CI gate. See how verdicts are produced.
Evidence
Every claim on this page traces to a primary source. Check them:
- npm deprecation notice for babel-preset-es2015 ("we recommend using babel-preset-env now")npmjs.com
- @babel/preset-env documentationbabeljs.io
Packages related to babel-preset-es2015
- babel-eslintRenamed package: @babel/eslint-parser · unmaintained since February 2020
- rollup-plugin-babelRenamed package: @rollup/plugin-babel · unmaintained since March 2020
- create-react-appSuccessor named by the maintainers: vite · unmaintained since February 2025
- eslint-loaderSuccessor named by the maintainers: eslint-webpack-plugin · unmaintained since April 2020
- extract-text-webpack-pluginSuccessor named by the maintainers: mini-css-extract-plugin · unmaintained since…
See the full index of covered packages, or read the methodology for how a verdict is reached and why a quiet package is not a dead one.