Switch branches/tags
Find file History
Permalink
..
Failed to load latest commit information.
babel-cli Delete undefined options so we handle old core versions with new CLI … Sep 19, 2018
babel-code-frame add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-core v7.1.0 Sep 17, 2018
babel-generator Handle throw expressions in generator (#8727) Sep 18, 2018
babel-helper-annotate-as-pure add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-bindify-decorators v7.1.0 Sep 17, 2018
babel-helper-builder-binary-assignment-operator-visitor v7.1.0 Sep 17, 2018
babel-helper-builder-react-jsx add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-call-delegate v7.1.0 Sep 17, 2018
babel-helper-define-map v7.1.0 Sep 17, 2018
babel-helper-explode-assignable-expression v7.1.0 Sep 17, 2018
babel-helper-explode-class v7.1.0 Sep 17, 2018
babel-helper-fixtures add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-function-name v7.1.0 Sep 17, 2018
babel-helper-get-function-arity add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-hoist-variables add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-member-expression-to-functions add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-module-imports add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-module-transforms v7.1.0 Sep 17, 2018
babel-helper-optimise-call-expression add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-plugin-test-runner v7.1.0 Sep 17, 2018
babel-helper-plugin-utils add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-regex add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-remap-async-to-generator v7.1.0 Sep 17, 2018
babel-helper-replace-supers v7.1.0 Sep 17, 2018
babel-helper-simple-access v7.1.0 Sep 17, 2018
babel-helper-split-export-declaration add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-helper-transform-fixture-test-runner v7.1.0 Sep 17, 2018
babel-helper-wrap-function v7.1.0 Sep 17, 2018
babel-helpers v7.1.0 Sep 17, 2018
babel-highlight add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-node Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-parser v7.1.0 Sep 17, 2018
babel-plugin-external-helpers Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-proposal-async-generator-functions v7.1.0 Sep 17, 2018
babel-plugin-proposal-class-properties v7.1.0 Sep 17, 2018
babel-plugin-proposal-decorators v7.1.0 Sep 17, 2018
babel-plugin-proposal-do-expressions add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-export-default-from add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-export-namespace-from add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-function-bind add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-function-sent v7.1.0 Sep 17, 2018
babel-plugin-proposal-json-strings add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-logical-assignment-operators Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-proposal-nullish-coalescing-operator Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-proposal-numeric-separator add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-object-rest-spread Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-proposal-optional-catch-binding add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-optional-chaining Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-proposal-pipeline-operator Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-proposal-throw-expressions add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-proposal-unicode-property-regex Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-syntax-async-generators add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-bigint add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-class-properties add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-decorators v7.1.0 Sep 17, 2018
babel-plugin-syntax-do-expressions add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-dynamic-import add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-export-default-from add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-export-namespace-from add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-flow add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-function-bind add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-function-sent add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-import-meta add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-json-strings add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-jsx add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-logical-assignment-operators add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-nullish-coalescing-operator add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-numeric-separator add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-object-rest-spread add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-optional-catch-binding add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-optional-chaining add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-pipeline-operator add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-throw-expressions add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-syntax-typescript add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-arrow-functions Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-async-to-generator v7.1.0 Sep 17, 2018
babel-plugin-transform-block-scoped-functions add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-block-scoping Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-classes v7.1.0 Sep 17, 2018
babel-plugin-transform-computed-properties Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-destructuring Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-dotall-regex add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-duplicate-keys Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-exponentiation-operator v7.1.0 Sep 17, 2018
babel-plugin-transform-flow-comments Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-flow-strip-types Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-for-of Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-function-name v7.1.0 Sep 17, 2018
babel-plugin-transform-instanceof add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-jscript Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-literals add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-member-expression-literals add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-modules-amd v7.1.0 Sep 17, 2018
babel-plugin-transform-modules-commonjs v7.1.0 Sep 17, 2018
babel-plugin-transform-modules-systemjs Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-modules-umd v7.1.0 Sep 17, 2018
babel-plugin-transform-new-target Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-object-assign add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-object-set-prototype-of-to-assign add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-object-super v7.1.0 Sep 17, 2018
babel-plugin-transform-parameters v7.1.0 Sep 17, 2018
babel-plugin-transform-property-literals add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-property-mutators v7.1.0 Sep 17, 2018
babel-plugin-transform-proto-to-assign add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-react-constant-elements Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-react-display-name add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-react-inline-elements Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-react-jsx-compat add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-react-jsx-self add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-react-jsx-source add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-react-jsx Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-regenerator Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-reserved-words add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-runtime v7.1.0 Sep 17, 2018
babel-plugin-transform-shorthand-properties add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-spread Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-sticky-regex add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-strict-mode add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-template-literals Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-plugin-transform-typeof-symbol add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-plugin-transform-typescript v7.1.0 Sep 17, 2018
babel-plugin-transform-unicode-regex add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-polyfill align regenerator runtime version (#8618) Sep 3, 2018
babel-preset-env-standalone add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-preset-env v7.1.0 Sep 17, 2018
babel-preset-flow Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-preset-react Format fixture JSON with Prettier. (#8658) Sep 10, 2018
babel-preset-stage-0 Use jsonc to parse babelrc comments in markdown files (#8643) [skip ci] Sep 7, 2018
babel-preset-stage-1 Use jsonc to parse babelrc comments in markdown files (#8643) [skip ci] Sep 7, 2018
babel-preset-stage-2 Use jsonc to parse babelrc comments in markdown files (#8643) [skip ci] Sep 7, 2018
babel-preset-stage-3 add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-preset-typescript v7.1.0 Sep 17, 2018
babel-register add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-runtime-corejs2 add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-runtime add access public to all packages [skip ci] (#8573) Aug 29, 2018
babel-standalone v7.1.0 Sep 17, 2018
babel-template v7.1.0 Sep 17, 2018
babel-traverse v7.1.0 Sep 17, 2018
babel-types v7.0.0 Aug 27, 2018
README.md Fix version badges in monorepo README (#8534) Sep 3, 2018

README.md

Woah, what's going on here?

A monorepo, muhahahahahaha. See the monorepo design doc for reasoning.

Core Packages

Package Version Dependencies
@babel/core npm Dependency Status
@babel/parser npm Dependency Status
@babel/traverse npm Dependency Status
@babel/generator npm Dependency Status

@babel/core is the Babel compiler itself; it exposes the babel.transform method, where transformedCode = transform(src).code.

The compiler can be broken down into 3 parts:

The flow goes like this:

input string -> @babel/parser parser -> AST -> transformer[s] -> AST -> @babel/generator -> output string

Check out the babel-handbook for more information on this.

Other

Package Version Dependencies
@babel/cli npm Dependency Status
@babel/types npm Dependency Status
@babel/polyfill npm Dependency Status
@babel/runtime npm Dependency Status
@babel/register npm Dependency Status
@babel/template npm Dependency Status
@babel/helpers npm Dependency Status
@babel/code-frame npm Dependency Status
  • @babel/cli is the CLI tool that runs @babel/core and helps with outputting to a directory, a file, stdout and more (also includes @babel/node cli). Check out the docs.
  • @babel/types is used to validate, build and change AST nodes.
  • @babel/polyfill is literally a wrapper around core-js and regenerator-runtime. Check out the docs.
  • @babel/runtime is similar to the polyfill except that it doesn't modify the global scope and is to be used with @babel/plugin-transform-runtime (usually in library/plugin code). Check out the docs.
  • @babel/register is a way to automatically compile files with Babel on the fly by binding to Node.js require. Check out the docs.
  • @babel/template is a helper function that allows constructing AST nodes from a string presentation of the code; this eliminates the tedium of using @babel/types for building AST nodes.
  • @babel/helpers is a set of pre-made @babel/template functions that are used in some Babel plugins.
  • @babel/code-frame is a standalone package used to generate errors that print the source code and point to error locations.

Presets

After Babel 6, the default transforms were removed; if you don't specify any plugins/presets, Babel will just return the original source code.

The transformer[s] used in Babel are the independent pieces of code that transform specific things. For example: the es2015-arrow-functions transform specifically changes arrow functions into regular functions. A preset is simply an array of plugins that make it easier to run a whole a set of transforms without specifying each one manually.

Package Version Dependencies Description
@babel/preset-env npm Dependency Status automatically determines plugins and polyfills you need based on your supported environments

You can find community maintained presets on npm

Plugins

Plugins are the heart of Babel and what make it work.

You can find community plugins on npm.

Transform Plugins

There are many kinds of plugins: ones that convert ES6/ES2015 to ES5, transform to ES3, minification, JSX, flow, experimental features, and more. Check out our website for more.

Syntax Plugins

These just enable the transform plugins to be able to parse certain features (the transform plugins already include the syntax plugins so you don't need both): @babel/plugin-syntax-x. Check out our website for more.

Helpers

These are mostly for internal use in various plugins: @babel/helper-x.