awesome-babel

JavaScript optimizer

A curated collection of Babel plugins and presets for optimizing JavaScript code

😎A list of awesome Babel plugins, presets, etc.

GitHub

866 stars
34 watching
47 forks
last commit: 3 months ago
Linked from 1 awesome list

awesomeawesome-listbabellist

Awesome Babel / Parsers

babel-eslint 2,966 over 3 years ago ESLint using Babel as the parser

Awesome Babel / Plugins / General Plugins

external-helpers Moves helper functions to a single imported module
fast-async 604 about 6 years ago Uses nodent to compile async/await to fast Promise output
feature-flags 57 over 3 years ago Helper for managing application feature flags
idx 1,686 11 months ago library + babel plugin for a existential function
transform-builtin-extend 148 almost 3 years ago Enable extending builtin types like and , which require special treatment and require static analysis to detect
console-source 37 about 4 years ago Prepends the file name and line numbers for all console commands
version 5 almost 6 years ago Babel plugin replace defined identifier to pkg.version
babel-plugin-debug-tools Babeljs Debug Tools helps you insert debug code and easely remove it when deploy to production

Awesome Babel / Plugins / Module Resolution

lodash 1,954 over 1 year ago Cherry-picks Lodash modules so you don’t have to
ramda 311 over 1 year ago Cherry-picks Ramda modules so you don’t have to
module-resolver 3,459 7 months ago Custom module resolver
root-import 1,176 almost 2 years ago Import modules from the root with syntax
webpack-alias 150 over 1 year ago Allows you to use webpack aliases and most of webpack resolve features in Babel
hash-resolve 7 over 4 years ago Allows you to use instead of , the number of needed is worked out by the plugin
rewrite-module-path 2 4 months ago Rewrite module resolving path

Awesome Babel / Plugins / React

React Optimize 1,672 over 7 years ago A Babel preset and plugins for optimizing React code
React Transform 1,079 about 6 years ago Instrument React components with custom transforms
react-docgen 162 over 1 year ago Makes propTypes comments accessible at runtime for use with documentation generators
react-require 159 4 months ago Adds React import declaration if file contains JSX tags
transform-react-remove-prop-types 897 almost 3 years ago Removes unnecessary React propTypes from the production build
transform-react-jsx-self 43,241 7 days ago Adds a property to JSX tags for debugging. Don't use in production
transform-react-constant-elements Hoist elements that can be marked as constant to the highest scope for reuse
transform-react-inline-elements Replaces with a helper that is more optimized for production
react-hyperscript 20 over 7 years ago HyperScript syntax for React components without runtime overhead
react-import-extends 10 over 6 years ago Extends if a class renders a JSX element, also adds statement if it detects a JSX component in the file
babel-plugin-transform-react-class-to-function 24 about 3 years ago Transforms React class components into a function, if possible
babel-plugin-hoist-facc 8 about 6 years ago Transforms function as child components to hoist the children function to highest scope
react-hiccup 16 over 1 year ago Hiccup syntax for React components
babel-plugin-framer-x 15 about 6 years ago Removes Framer X markup from your components. Lets you use Framer X components in a Storybook or real application
babel-plugin-react-directive 28 about 1 year ago Use directive in React, for example, you can use 、 in jsx just as 、 in Vue
zacs 432 about 1 year ago "styled components"-ish syntax without performance overhead
babel-plugin-typescript-to-proptypes 367 over 1 year ago Generate React PropTypes from TypeScript interfaces or type aliases

Awesome Babel / Plugins / Internationalization

c-3po Localization tool based on es6 template literals
react-intl 14,321 6 days ago Extracts string messages for translation from modules that use
localize 10 over 6 years ago Modify static jsx text and string attributes with function call. πŸ”§

Awesome Babel / Plugins / Types

flow-runtime 802 almost 2 years ago Turns Flow annotations into runtime checks. Part of
tcomb 482 about 5 years ago Turns Flow annotations into typechecks with
jsdoc-to-assert 55 about 5 years ago Turns JSDoc into runtime checks
runtyper 116 almost 2 years ago Detects type-mismatch operations in runtime without annotations

Awesome Babel / Plugins / Testing

espower 93 almost 2 years ago Annotates call sites for descriptive messages when using
istanbul 630 4 months ago Instruments your code with Istanbul coverage
rewire 842 over 1 year ago Adds the ability to rewire module dependencies. This enables to mock modules for testing purposes

Awesome Babel / Plugins / Optimization

groundskeeper-willie 63 about 2 years ago Removes debugger and console calls
loop-optimizer 74 over 4 years ago Transforms and calls to for loops. πŸ”§
closure-elimination 367 almost 2 years ago Transforms closures into separate functions
preval 1,358 almost 3 years ago Pre-evaluate code at build-time
transform-named-imports 38 almost 2 years ago Avoid including code that you don't need from modules you're importing
faster.js 436 almost 2 years ago Transforms native methods into faster equivalents. πŸ”§
optimize-i18n 14 about 6 years ago Optimizing i18n bundle file by shorten the locale key
cloudinary 24 over 1 year ago Compile cloudinary URLs at build time
object-to-json-parse 159 almost 2 years ago Converts from object literal to

Awesome Babel / Plugins / Syntax Sugar

implicit-return 25 almost 6 years ago Transforms last statement in a function block to a return statement
transform-iota 4 almost 7 years ago Golang-style . πŸ”§
offside-js 8 about 6 years ago Coffeescript-like indented block syntax hack. πŸ”§πŸš§
trace 63 over 6 years ago Syntax shortcuts for console logging
meaningful-logs 50 almost 2 years ago Adds file name and line number of caller to calls
implicit-function 24 about 7 years ago Implicit functions via operator, transforming, for example, in
function-composition 63 over 6 years ago Function piping and composition via operator, for example,
auto-await 27 over 5 years ago Automatically every in functions

Awesome Babel / Plugins / Alternative Programming Paradigms

macros 262 over 8 years ago Hygienic, non-syntactic macros. πŸ”§
contracts 267 over 5 years ago Design by Contract; Includes preconditions, postconditions, and invariant conditions
transform-scala-lambda 54 over 5 years ago Enable Scala-style lambdas (using ). πŸ”§
partial-application 58 almost 6 years ago Scala/Kotlin-esque partial application syntax for JavaScript (using ). πŸ”§
overload 46 over 7 years ago Allow overloading default operators like or for specific classes. πŸ”§πŸš§
babel-macros 2,625 over 1 year ago Enables zero-config, importable babel plugins
holes 48 almost 7 years ago Holes (like Scala and Elixir) to help point-free programming, using operators as functions. πŸ”§

Awesome Babel / Presets

env 43,241 7 days ago which includes transforms based on the specified environment (browsers, node, electron, etc)
React Babel preset for all React plugins
React Optimize 1,672 over 7 years ago A Babel preset and plugins for optimizing React code

Awesome Babel / Tooling

babel-watch 529 over 1 year ago Reloads a node app on file changes
babel-time-travel 344 over 6 years ago Time travel through babel transformations one by one
react-ast 318 10 months ago Render babel ASTs with react

Backlinks from these awesome lists:

More related projects: