Babel è un compilatore di JavaScript gratuito ed open source che è principalmente utilizzato per convertire il codice ECMAScript 2015+ (ES6+) in una versione di JavaScript compatibile con versioni precedenti e attualmente supportate dai browser.
Viene utilizzato perché, purtroppo, non tutti i browser possono interpretare il nuovo standard di JavaScript (ES6+). Perciò, poiché la maggior parte dei browser supporta solo ES5, Babel è estremamente utile per scrivere codice che funziona su tutti i browser, non solo su quelli che supportano l’ultima versione di JavaScript.
Babel non consente solo di trasformare la sintassi, ma consente anche di aggiungere funzionalità che mancano tramite l’uso dei polifill. Un polifill è un pezzo di codice (o plugin) che fornisce la tecnologia che ci si aspetta il browser di fornire nativamente.
Inoltre, Babel offre la possibilità di usare le proposte di caratteristiche JavaScript non ancora finalizzate (non standard), consentendo così agli sviluppatori di sperimentare le nuove caratteristiche prima che vengano formalmente incluse nello standard JavaScript.