Skip to content
#

Babel

babel logo

🐠 Babel is a compiler created by Sebastian McKenzie in 2014 to convert ES6 to ES5 (originally called 6to5). It has since become a toolchain that enables developers to write any next generation JavaScript and serves as a testing ground for proposals from TC39, the technical committee that specifies ECMAScript. Babel can also convert JSX syntax and strip out type annotations from both Flow and TypeScript. Babel is built out of plugins. Compose your own transformation pipeline using plugins written by the community or write your own.

Here are 6,625 public repositories matching this topic...

nicolo-ribaudo
nicolo-ribaudo commented Oct 3, 2020

Since we are now only building Babel on Node.js 14 (even if we still test it on Node.js 6), we can use native ECMAScript modules for the build scripts:

  • Top-level scripts
    There are a bunch of scripts/tests in the scripts folder: they can probably all be rewritten to ES modules.
    We can probably add "type": "module" to the top
nick-at-hawkfish
nick-at-hawkfish commented Jan 27, 2020

It would be nice to have a babel macro that automatically runs the babel plugin to remove the runtime. That way, this project would work out of the box with "zero" config tools like create-react-app.

I'm thinking it could be something like:

import {html} from 'htm/preact/macro'

This is similar conceptually to CSS-IN-JS libraries providing a macro for their tools. See https://e

boopathi
boopathi commented Feb 20, 2017

Validate the entire tree of options passed to preset.

Maybe, each plugin can export a list of options that only babili preset understands and we can validate them only when using the preset and not when using the plugin separately.

module.exports = function plugin() {};
module.exports.options = PropTypes.object({
  n: PropTypes.number
});

Or, this can be implemented in bab

Created by Sebastian McKenzie, James Kyle, Henry Zhu, Logan Smyth, Daniel Tschinder

Released September 28, 2014

Organization
babel
Website
babeljs.io

Related Topics

babel-es6 babel-plugin babel-preset
You can’t perform that action at this time.