All Projects → obahareth → Are You Es5

obahareth / Are You Es5

Licence: mit
A package to help you find out which of your node_modules aren't ES5 so you can add them to your Webpack/Rollup/Parcel transpilation steps.

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects
es5
17 projects

Projects that are alternatives of or similar to Are You Es5

Mullet
Mullet Stack: Facebook in the front. Walmart in the back. (React, Hapijs, Node)
Stars: ✭ 194 (-1.52%)
Mutual labels:  webpack, babel
Reactn
React, but with built-in global state management.
Stars: ✭ 1,906 (+867.51%)
Mutual labels:  webpack, babel
Webpack Encore
A simple but powerful API for processing & compiling assets built around Webpack
Stars: ✭ 1,975 (+902.54%)
Mutual labels:  webpack, babel
Webpack Babel Multi Target Plugin
A Webpack plugin that works with Babel to allow differential loading - production deployment of ES2015 builds targeted to modern browsers, with an ES5 fallback for legacy browsers.
Stars: ✭ 150 (-23.86%)
Mutual labels:  webpack, babel
Essential React
A minimal skeleton for building testable React apps using Babel
Stars: ✭ 2,035 (+932.99%)
Mutual labels:  webpack, babel
Babel Plugin Webpack Alias
babel 6 plugin which allows to use webpack resolve options
Stars: ✭ 151 (-23.35%)
Mutual labels:  webpack, babel
Hops
Universal Development Environment
Stars: ✭ 158 (-19.8%)
Mutual labels:  webpack, babel
Js Stack Boilerplate
Final boilerplate code of the JavaScript Stack from Scratch tutorial –
Stars: ✭ 145 (-26.4%)
Mutual labels:  webpack, babel
React Tradingview Widget
React component for rendering the TradingView Advanced Real-Time Chart Widget.
Stars: ✭ 170 (-13.71%)
Mutual labels:  webpack, babel
Graphpack
☄️ A minimalistic zero-config GraphQL server.
Stars: ✭ 1,994 (+912.18%)
Mutual labels:  webpack, babel
Generator Phaser Plus
[🛑 DISCONTINUED] It has been a long journey but development of `generator-phaser-plus` is now over. I recommend you have a look and fork `yandeu/phaser-project-template` instead.
Stars: ✭ 148 (-24.87%)
Mutual labels:  webpack, babel
Typescript Webpack React Redux Boilerplate
React and Redux with TypeScript
Stars: ✭ 182 (-7.61%)
Mutual labels:  webpack, babel
Keepformac
keep for mac
Stars: ✭ 147 (-25.38%)
Mutual labels:  webpack, babel
Crate
👕 👖 📦 A sample web and mobile application built with Node, Express, React, React Native, Redux and GraphQL. Very basic replica of stitchfix.com / krate.in (allows users to get monthly subscription of trendy clothes and accessories).
Stars: ✭ 2,281 (+1057.87%)
Mutual labels:  webpack, babel
Breko Hub
Babel React Koa Hot Universal Boilerplate
Stars: ✭ 145 (-26.4%)
Mutual labels:  webpack, babel
Express Webpack React Redux Typescript Boilerplate
🎉 A full-stack boilerplate that using express with webpack, react and typescirpt!
Stars: ✭ 156 (-20.81%)
Mutual labels:  webpack, babel
Iceberg
Front-End Boilerplate built with React + Babel + Webpack + SASS
Stars: ✭ 144 (-26.9%)
Mutual labels:  webpack, babel
React Starter Kit
完美使用 React, Redux, and React-Router!超好用的脚手架
Stars: ✭ 1,755 (+790.86%)
Mutual labels:  webpack, babel
React Redux Universal Boilerplate
An Universal ReactJS/Redux Boilerplate
Stars: ✭ 165 (-16.24%)
Mutual labels:  webpack, babel
Advanced React Webpack Babel Setup
The advanced React, Webpack, Babel Setup. You want to get beyond create-react-app?
Stars: ✭ 176 (-10.66%)
Mutual labels:  webpack, babel

are-you-es5

All Contributors

A package to help you find out which of your node_modules aren't written in ES5 so you can add them to your Webpack/Rollup/Parcel transpilation steps. This is currently limited to checking the entrypoint scripts only, which might actually be enough of a check to determine if a package should be transpiled or not.

Installing

You can install the package globally with

npm install -g are-you-es5

or if you'd rather just run it immediately you can use npx:

npx are-you-es5 check /path/to/some/repo

Aliasing

If you've installed it globally and find it tiresome to type are-you-es5 a lot, you can alias it to es5:

alias es5="are-you-es5"

Usage

Usage: are-you-es5 check [options] <path>

Checks if all node_modules (including monorepos) at <path> are ES5

Options:
  -a, --all             Check all node_modules instead of just direct dependencies
  -v, --verbose         Log all messages (including modules that are ES5)
  --no-regex-filtering  Stops all filtering on babel-loader exclude regex (does not hide anything)
  -r, --regex           Get babel-loader exclude regex to ignore all node_modules except non-ES5 ones, by default does not show any babel or webpack modules, use with --no-regex-filtering if you want to see everything
  --silent              Do not log messages in the console (except regex if --regex is used)
  -h, --help            output usage information

Usage as a Library

If you would like to use this package as a NodeJS library instead of a CLI dependency, you may use this snippet:

import {
  checkModules,
  buildIncludeRegexp,
  buildExcludeRegexp
} from 'are-you-es5'

const result = checkModules({
  path: '', // Automatically find up package.json from cwd
  checkAllNodeModules: true,
  ignoreBabelAndWebpackPackages: true
})

/** Returns the regexp including all es6 modules */
const es6IncludeRegExp = buildIncludeRegexp(result.es6Modules)

/** Returns the regexp excluding all es6 modules */
const es6ExcludeRegexp = buildExcludeRegexp(result.es6Modules)

Example

are-you-es5 check /path/to/some/repo -r
❌ @babel/plugin-1 is not ES5
❌ @babel/plugin-2 is not ES5

Babel-loader exclude regex:

/node_modules/(?![plugin-1|plugin-2])/

Upgrading

Upgrading from 1.1

If you were on version 1.1, the -a or -all option used to be for logging all messages, this has now changed to -v or --verbose and -a and -all are now used as a flag to check all node modules.

Upgrading to 1.3

1.3 Now by default skips checking anything that has the word babel or webpack, or if a string ends with loader. To restore previous behavior use the --no-regex-filtering option.

Upgrading from 2.0 to 2.1

This upgrade only affects you if you were using the package as a library (instead of just a CLI tool), checkModules now returns an object that has 3 arrays: es5Modules, es6Modules, and ignored. To preserve previous behavior use es6Modules, see the Usage as a Library section.

Credits

  • acorn - All the actual ES5 checking happens through acorn, this package wouldn't exist without it.
  • es-check - This whole package wouldn't have been possible if I hadn't come across es-check and learned from it.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Clément DUNGLER

💻

Paolo Priotto

💻

Yuki Hattori

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

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].