babel / Awesome Babel
Licence: cc0-1.0
😎A list of awesome Babel plugins, presets, etc.
Stars: ✭ 770
Projects that are alternatives of or similar to Awesome Babel
Awesome Babel Macros
A collection of awesome babel macros and related resources
Stars: ✭ 413 (-46.36%)
Mutual labels: babel, list
Awesome Composer
😎 A curated awesome list for Composer, Packagist, Satis, Plugins, Scripts, Composer related resources, tutorials.
Stars: ✭ 738 (-4.16%)
Mutual labels: list
Awesome Macos Command Line
Use your macOS terminal shell to do awesome things.
Stars: ✭ 25,622 (+3227.53%)
Mutual labels: list
Open Source Ios Apps
📱 Collaborative List of Open-Source iOS Apps
Stars: ✭ 28,826 (+3643.64%)
Mutual labels: list
Krackinfo
Vendor Response Matrix for KRACK WPA2 (Key Reinstallation Attack)
Stars: ✭ 724 (-5.97%)
Mutual labels: list
Awesome Slack
A curated list of awesome Slack related things
Stars: ✭ 695 (-9.74%)
Mutual labels: list
Awesome Sre
A curated list of Site Reliability and Production Engineering resources.
Stars: ✭ 7,687 (+898.31%)
Mutual labels: list
Project Based Tutorials In C
A curated list of project-based tutorials in C
Stars: ✭ 7,979 (+936.23%)
Mutual labels: list
Awesome Transit
Community list of transit APIs, apps, datasets, research, and software 🚌🌟🚋🌟🚂
Stars: ✭ 713 (-7.4%)
Mutual labels: list
Awesome Web Security
🐶 A curated list of Web Security materials and resources.
Stars: ✭ 6,623 (+760.13%)
Mutual labels: list
Embedded Scripting Languages
A list of embedded scripting languages
Stars: ✭ 699 (-9.22%)
Mutual labels: list
Preset Modules
A Babel preset that targets modern browsers by fixing engine bugs (will be merged into preset-env eventually)
Stars: ✭ 730 (-5.19%)
Mutual labels: babel
Pure Bash Bible
📖 A collection of pure bash alternatives to external processes.
Stars: ✭ 28,109 (+3550.52%)
Mutual labels: list
React Article Bucket
总结,积累,分享,传播JavaScript各模块核心知识点文章全集,欢迎star,issue(勿fork,内容可能随时修改)。webpack核心内容部分请查看专栏: https://github.com/liangklfangl/webpack-core-usage
Stars: ✭ 750 (-2.6%)
Mutual labels: babel
Nylas Mail
💌 An extensible desktop mail app built on the modern web. Forks welcome!
Stars: ✭ 24,653 (+3101.69%)
Mutual labels: babel
Awesome Conferences
DEPRECATED 🎫 A list of awesome conferences
Stars: ✭ 719 (-6.62%)
Mutual labels: list
Awesome Linuxaudio
[mirror] A list of software and resources for professional audio/video/live events production on Linux.
Stars: ✭ 756 (-1.82%)
Mutual labels: list
Generator Angular Fullstack
Yeoman generator for an Angular app with an Express server
Stars: ✭ 6,135 (+696.75%)
Mutual labels: babel
Awesome Babel
A list of awesome Babel plugins, presets, etc. Many of these are from the community, but some are lesser-known plugins in the Babel organization that may be useful to you.
As always, use caution when trying out Babel plugins, especially those marked as 🔧 experimental or 🔧🚧 under construction.
If you want to contribute, please read the contribution guidelines.
Parsers
-
babel-eslint - ESLint using Babel as the parser.
- Note: ESLint now lints most ES6+ syntax. This parser is only necessary if you are using Flow types or other experimental features.
Plugins
General Plugins
- external-helpers - Moves helper functions to a single imported module.
- fast-async - Uses nodent to compile async/await to fast Promise output.
- feature-flags - Helper for managing application feature flags.
- idx - library + babel plugin for a existential function.
-
transform-builtin-extend - Enable extending builtin types like
Error
andArray
, which require special treatment and require static analysis to detect. - console-source - Prepends the file name and line numbers for all console commands
-
version - Babel plugin replace defined identifier
__VERSION__
to pkg.version.
Module Resolution
- lodash - Cherry-picks Lodash modules so you don’t have to.
- ramda - Cherry-picks Ramda modules so you don’t have to.
- module-resolver - Custom module resolver.
-
root-import - Import modules from the root with
require('~/foo')
syntax. - webpack-alias - Allows you to use webpack aliases and most of webpack resolve features in Babel.
-
hash-resolve - Allows you to use
require('#/path')
instead ofrequire('../../path')
, the number of../
needed is worked out by the plugin
React
- React Optimize - A Babel preset and plugins for optimizing React code.
- React Transform - Instrument React components with custom transforms.
- react-docgen - Makes propTypes comments accessible at runtime for use with documentation generators.
- react-require - Adds React import declaration if file contains JSX tags.
- transform-react-remove-prop-types - Removes unnecessary React propTypes from the production build.
-
transform-react-jsx-self - Adds a
__self
property to JSX tags for debugging. Don't use in production. More info - transform-react-constant-elements - Hoist elements that can be marked as constant to the highest scope for reuse.
-
transform-react-inline-elements - Replaces
React.createElement()
with a helper that is more optimized for production. - react-hyperscript - HyperScript syntax for React components without runtime overhead.
-
react-import-extends - Extends
Component
if a class renders a JSX element, also addsimport
statement if it detects a JSX component in the file. - babel-plugin-transform-react-class-to-function - Transforms React class components into a function, if possible.
- babel-plugin-hoist-facc - Transforms function as child components to hoist the children function to highest scope.
- react-hiccup - Hiccup syntax for React components.
- babel-plugin-framer-x - Removes Framer X markup from your components. Lets you use Framer X components in a Storybook or real application.
-
babel-plugin-react-directive - Use directive in React, for example, you can use
r-if
、r-for
in jsx just asv-if
、v-for
in Vue. - zacs - "styled components"-ish syntax without performance overhead
- babel-plugin-typescript-to-proptypes - Generate React PropTypes from TypeScript interfaces or type aliases.
Internationalization
- c-3po - Localization tool based on es6 template literals.
- react-intl - Extracts string messages for translation from modules that use React Intl.
- localize - Modify static jsx text and string attributes with function call. 🔧
Types
- flow-runtime - Turns Flow annotations into runtime checks. Part of Flow-Runtime.
- tcomb - Turns Flow annotations into typechecks with tcomb.
- jsdoc-to-assert - Turns JSDoc into runtime checks.
- runtyper - Detects type-mismatch operations in runtime without annotations.
Testing
- espower - Annotates call sites for descriptive messages when using power-assert.
- istanbul - Instruments your code with Istanbul coverage.
- rewire - Adds the ability to rewire module dependencies. This enables to mock modules for testing purposes.
Optimization
- groundskeeper-willie - Removes debugger and console calls.
-
loop-optimizer - Transforms
.forEach
and.map
calls to for loops. 🔧 - closure-elimination - Transforms closures into separate functions.
- preval - Pre-evaluate code at build-time.
- transform-named-imports - Avoid including code that you don't need from modules you're importing.
-
faster.js - Transforms native
Array
methods into faster equivalents. 🔧 - optimize-i18n - Optimizing i18n bundle file by shorten the locale key.
- cloudinary - Compile cloudinary URLs at build time.
-
object-to-json-parse - Converts from object literal to
JSON.parse
.
Syntax Sugar
- implicit-return - Transforms last statement in a function block to a return statement.
-
transform-iota - Golang-style
iota()
. 🔧 - offside-js - Coffeescript-like indented block syntax hack. 🔧🚧
- trace - Syntax shortcuts for console logging.
-
meaningful-logs - Adds file name and line number of caller to
console.log()
calls. -
implicit-function - Implicit functions via
~
operator, transforming, for example,~x
in() => x
. -
function-composition - Function piping and composition via
&
operator, for example,toUpper & console.log
. -
auto-await - Automatically
await
everyPromise
inasync
functions.
Alternative Programming Paradigms
- macros - Hygienic, non-syntactic macros. 🔧
- contracts - Design by Contract; Includes preconditions, postconditions, and invariant conditions.
-
transform-scala-lambda - Enable Scala-style lambdas (using
_
). 🔧 -
partial-application - Scala/Kotlin-esque partial application syntax for JavaScript (using
_
). 🔧 -
overload - Allow overloading default operators like
+
or===
for specific classes. 🔧🚧 - babel-macros - Enables zero-config, importable babel plugins.
- holes - Holes (like Scala and Elixir) to help point-free programming, using operators as functions. 🔧
Presets
- env - The recommended preset which includes transforms based on the specified environment (browsers, node, electron, etc).
- React - Babel preset for all React plugins.
- React Optimize - A Babel preset and plugins for optimizing React code.
Tooling
- babel-watch - Reloads a node app on file changes.
- babel-time-travel - Time travel through babel transformations one by one.
License
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].