Babel

詳細情報

タイトル Babel
URL https://babeljs.io/
バージョン ver 8.0.6
更新日 2026/09/19
追加日 2016/03/04
種別 フリーソフト
説明 新しい仕様で記述されたJavaScriptコードを現状のWebブラウザで動作してくれるように変換するトランスパイラ。

レビュー

概要

Babelは、最新のJavaScript(ES2015以降)で記述されたコードを、現在のブラウザや旧式の環境でも動作する互換性のあるJavaScriptに変換するオープンソースのJavaScriptトランスパイラ(コンパイラ)です。「Use next generation JavaScript, today.(次世代のJavaScriptを今すぐ使おう)」をスローガンに、2014年にSebastian McKenzie氏によって開発が始まりました(当初は「6to5」という名称でした)。現在はボランティアのチームによってメンテナンスされており、Airbnb・Coinbaseなど多数の企業がスポンサーとして支援しています。モダンなJavaScript開発のツールチェーンに欠かせない存在となっており、React・Vue・Angularなどのフレームワークプロジェクトでも広く採用されています。

主要な特徴・機能

  • 新構文のトランスパイル: アロー関数・クラス構文・テンプレートリテラル・デストラクチャリング等のES2015+構文を旧環境向けに変換
  • ポリフィル対応: core-jsと組み合わせ、新しいAPIやメソッドをポリフィルとして注入
  • プリセット機能: @babel/preset-envでターゲットブラウザを指定し、必要な変換のみ自動適用
  • プラグインシステム: 変換処理をプラグインで細かくカスタマイズできる柔軟なアーキテクチャ
  • JSX対応: Reactで使われるJSX構文をJavaScriptに変換する@babel/preset-reactを提供
  • TypeScript対応: TypeScriptコードをJavaScriptに変換する@babel/preset-typescriptを提供
  • ソースマップ生成: デバッグを容易にするソースマップの生成をサポート
  • AST変換: 抽象構文木(AST)を操作するカスタムプラグインの作成が可能

対象ユーザー

  • 最新のJavaScript仕様を使いながら幅広いブラウザ互換性を確保したいフロントエンド開発者
  • React・Vue・Angularなどのモダンフレームワークを使ったWebアプリを開発するエンジニア
  • TypeScriptやJSXを含むプロジェクトをビルドパイプラインに組み込みたいチーム
  • カスタムコード変換ツールを作りたいJavaScript上級者

ライセンス情報

BabelはMITライセンスのもとで公開されているオープンソースソフトウェアです。無料で利用・改変・再配布が可能です。npmからインストール可能で、ソースコードはGitHub(babel/babel)で公開されています。

スクリーンショット

スクリーンショットはありません。

更新グラフ

バージョン履歴

v8.0.6

Choose a tag to compare

Sorry, something went wrong.

Loading
(省略されました)
v8.0.5

Choose a tag to compare

Sorry, something went wrong.

Loading
(省略されました)
v7.29.8

Choose a tag to compare

Sorry, something went wrong.

Loading
(省略されました)
v8.0.4

Choose a tag to compare

Sorry, something went wrong.

Loading
(省略されました)
v8.0.3

v8.0.3 (2026-06-27)

🐛 Bug Fix

  • babel-core, babel-plugin-syntax-typescript
    • #18089 fix: Remove isTSX from babel-plugin-syntax-typescript types (@liuxingbaoyu)
  • babel-standalone
    • #18086 fix: Use runtime: 'classic' in the browser for React (@liuxingbaoyu)

Committers: 2

  • Nicolò Ribaudo (@nicolo-ribaudo)
  • @liuxingbaoyu
v8.0.2

v8.0.2 (2026-06-18)

🐛 Bug Fix

  • Other
    • #18083 Use the @babel/core version when asserting version in @babel/standalone (@nicolo-ribaudo)
  • babel-helper-validator-identifier
    • #18075 fix(identifier): avoid double escaping slash (@JLHwung)

🏠 Internal

  • babel-plugin-proposal-decorators, babel-plugin-transform-regenerator, babel-preset-env
    • #18081 Update @babel/preset-modules and polyfill packages (@nicolo-ribaudo)

Committers: 2

  • Huáng Jùnliàng (@JLHwung)
  • Nicolò Ribaudo (@nic
(省略されました)
v8.0.1

v8.0.1 (2026-06-17)

This release includes a breaking change that was in the Babel 8 migration guide's Getting ready section and in the release post, but the actual removal of the feature from the codebase was accidentally not complete.

💥 Breaking Change

  • babel-core, babel-plugin-transform-object-rest-spread, babel-plugin-transform-runtime, babel-preset-env, babel-standalone
    • #18079 Actually remove preset-env's useBuiltIns (@nicolo-ribaudo)

Committers: 2

  • Huáng Jùnliàng (@JLHwung)
  • Nicolò Ribaudo (@nicolo-ribaudo)
v8.0.0

v8.0.0 (2026-06-16)

NOTE: The changelog below is relative to v8.0.0-rc.6. You can find a summary of all the breaking changes shipped in the Babel 8 release line in the migration guide for users and migration guide for plugin developers.

Read the release blog post at http://babeljs.io/blog/2026/06/16/8.0.0!

👓 Spec Compliance

  • babel-core
    • #18039 perf: Only extract source map comments at the end of the file (@liuxingbaoyu)

💥 Breaking Change

  • babel-cli, babel-node, babel-plugin-proposal-decorators, babel-plugin-transform-classes, babel-plugin-transform-function-name, babel-plugi
(省略されました)
v8.0.0-rc.6 Pre-release
Pre-release

v8.0.0-rc.6 (2026-05-25)

🐛 Bug Fix

  • babel-generator
    • #18011 Catchup source map position in preserveFormat (@nicolo-ribaudo)
  • babel-core
    • #17999 fix: improve inputSourceMap URL handling (@JLHwung)
  • babel-core, babel-generator
    • #17992 Preserve original identifier names from input sourcemaps (@Andarist)

🏠 Internal

  • babel-core
    • #17970 Always use native Node.js TS support for config files (@nicolo-ribaudo)
(省略されました)
v8.0.0-rc.5 Pre-release
Pre-release

v8.0.0-rc.5 (2026-05-12)

👓 Spec Compliance

  • babel-parser
    • #17949 Disallow decorators on abstract/declare fields (@nicolo-ribaudo)

💥 Breaking Change

  • babel-code-frame, babel-core, babel-parser, babel-traverse
    • #17849 fix(code-frame): use 0-based columns to match Babel AST locations (#1… (@nehemiyawicks)
  • All packages
    • #17969 Require Node.js ^22.18.0 || >=24.11.0 (@nicolo-ribaudo)
  • babel-plugin-t
(省略されました)
v7.29.5

v7.29.5 (2026-05-05)

🏠 Internal

  • babel-preset-env
    • Update @babel/* dependencies