What is Babel?

Babel will turn your ES6+ code into ES5 friendly code, so you can start using it right now without waiting for browser support.
Babel is a tool in the JavaScript Compilers category of a tech stack.
Babel is an open source tool with 43.3K GitHub stars and 5.7K GitHub forks. Here’s a link to Babel's open source repository on GitHub

Who uses Babel?

Companies
2045 companies reportedly use Babel in their tech stacks, including Instagram, Robinhood, and Discord.

Developers
13390 developers on StackShare have stated that they use Babel.

Babel Integrations

gulp, Grunt, RequireJS, Gatsby, and Browserify are some of the popular tools that integrate with Babel. Here's a list of all 12 tools that integrate with Babel.
Pros of Babel
165
Modern Javascript works with all browsers
77
Open source
60
Integration with lots of tools
56
Easy setup
26
Very active on github
2
JSX
2
Love
2
Source maps
1
Extensions
Decisions about Babel

Here are some stack decisions, common use cases and reviews by companies and developers who chose Babel in their tech stack.

Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 24 upvotes · 4.9M views

Our whole Vue.js frontend stack (incl. SSR) consists of the following tools:

  • Nuxt.js consisting of Vue CLI, Vue Router, vuex, Webpack and Sass (Bundler for HTML5, CSS 3), Babel (Transpiler for JavaScript),
  • Vue Styleguidist as our style guide and pool of developed Vue.js components
  • Vuetify as Material Component Framework (for fast app development)
  • TypeScript as programming language
  • Apollo / GraphQL (incl. GraphiQL) for data access layer (https://apollo.vuejs.org/)
  • ESLint, TSLint and Prettier for coding style and code analyzes
  • Jest as testing framework
  • Google Fonts and Font Awesome for typography and icon toolkit
  • NativeScript-Vue for mobile development

The main reason we have chosen Vue.js over React and AngularJS is related to the following artifacts:

  • Empowered HTML. Vue.js has many similar approaches with Angular. This helps to optimize HTML blocks handling with the use of different components.
  • Detailed documentation. Vue.js has very good documentation which can fasten learning curve for developers.
  • Adaptability. It provides a rapid switching period from other frameworks. It has similarities with Angular and React in terms of design and architecture.
  • Awesome integration. Vue.js can be used for both building single-page applications and more difficult web interfaces of apps. Smaller interactive parts can be easily integrated into the existing infrastructure with no negative effect on the entire system.
  • Large scaling. Vue.js can help to develop pretty large reusable templates.
  • Tiny size. Vue.js weights around 20KB keeping its speed and flexibility. It allows reaching much better performance in comparison to other frameworks.
See more

Blog Posts

JavaScriptGitHubNode.js+29
14
13647
JavaScriptGitHubPython+42
53
22178

Jobs that mention Babel as a desired skillset

See all jobs

Babel's Features

  • Array comprehensions
  • Arrow functions
  • Async functions
  • Async generator functions
  • Classes
  • Class properties
  • Computed property names
  • Constants
  • Decorators
  • Default parameters
  • Destructuring
  • Exponentiation operator
  • For-of
  • Generators
  • Generator comprehensions
  • Let scoping
  • Modules
  • Module export extensions
  • Object rest/spread
  • Property method assignment
  • Property name shorthand
  • Rest parameters
  • React
  • Spread
  • Tail call optimisation
  • Template literals
  • Type annotations
  • Unicode regex
  • JSX
  • React
  • Flow
  • Node.js
  • Meteor
  • Rails
  • Broccoli
  • Browserify
  • Require.js
  • Brunch
  • Duo
  • Gobble
  • Grunt
  • Gulp
  • Make
  • Webpack
  • Connect
  • Jade
  • Jest
  • Karma
  • Mocha
  • Nodemon

Babel Alternatives & Comparisons

What are some alternatives to Babel?
Webpack
A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows to load parts for the application on demand. Through "loaders" modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.
TypeScript
TypeScript is a language for application-scale JavaScript development. It's a typed superset of JavaScript that compiles to plain JavaScript.
CoffeeScript
It adds syntactic sugar inspired by Ruby, Python and Haskell in an effort to enhance JavaScript's brevity and readability. Specific additional features include list comprehension and de-structuring assignment.
ESLint
A pluggable and configurable linter tool for identifying and reporting on patterns in JavaScript. Maintain your code quality with ease.
rollup
It is a module bundler for JavaScript which compiles small pieces of code into something larger and more complex, such as a library or application. It uses the new standardized format for code modules included in the ES6 revision of JavaScript, instead of previous idiosyncratic solutions such as CommonJS and AMD.
See all alternatives

Babel's Followers
10932 developers follow Babel to keep up with related blogs and decisions.