awesome-babel
JavaScript optimizer
A curated collection of Babel plugins and presets for optimizing JavaScript code
πA list of awesome Babel plugins, presets, etc.
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 |