esbuild-plugin-babel
browserslist
esbuild-plugin-babel | browserslist | |
---|---|---|
2 | 55 | |
66 | 12,714 | |
- | 0.5% | |
10.0 | 7.8 | |
over 1 year ago | about 2 months ago | |
JavaScript | JavaScript | |
ISC License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
esbuild-plugin-babel
-
How do i get PrismJS working with phoenix?
As mentioned the frameworks have gone through some changes since then. Babel is hardly ever used these days, esbuild doesn't pick up the babel config automatically. If you're using the default esbuild config generated with a modern phx_new version, look into changing it to a custom build script in https://hexdocs.pm/phoenix/asset_management.html#esbuild-plugins and then integrate something like this plugin https://github.com/nativew/esbuild-plugin-babel to be able to run https://github.com/mAAdhaTTah/babel-plugin-prismjs. There is a comment at the bottom of the tutorial of someone getting it to work with live view by listening for a phx page loading event, but the more idiomatic way these days would be to use a hook.
-
Configure Stimulus with esbuild and Babel — Rails & Javascript
// config/esbuild.mjs import path from 'path' import esbuild from 'esbuild' import rails from 'esbuild-rails' import babel from 'esbuild-plugin-babel' esbuild .build({ bundle: true, // Path to application.js folder absWorkingDir: path.join(process.cwd(), 'app/javascript'), // Application.js file, used by Rails to bundle all JS Rails code entryPoints: ['application.js'], // Destination of JS bundle, points to the Rails JS Asset folder outdir: path.join(process.cwd(), 'app/assets/builds'), // Enables watch option. Will regenerate JS bundle if files are changed watch: process.argv.includes('--watch'), // Split option is disabled, only needed when using multiple input files // More information: https://esbuild.github.io/api/#splitting (change it if using multiple inputs) splitting: false, chunkNames: 'chunks/[name]-[hash]', // Remove unused JS methods treeShaking: true, // Adds mapping information so web browser console can map bundle errors to the corresponding // code line and column in the real code // More information: https://esbuild.github.io/api/#sourcemap sourcemap: process.argv.includes('--development'), // Compresses bundle // More information: https://esbuild.github.io/api/#minify minify: process.argv.includes('--production'), // Removes all console lines from bundle // More information: https://esbuild.github.io/api/#drop drop: process.argv.includes('--production') ? ['console'] : [], // Build command log output: https://esbuild.github.io/api/#log-level logLevel: 'info', // Set of ESLint plugins plugins: [ // Plugin to easily import Rails JS files, such as Stimulus controllers and channels // https://github.com/excid3/esbuild-rails rails(), // Configures bundle with Babel. Babel configuration defined in babel.config.js // Babel translates JS code to make it compatible with older JS versions. // https://github.com/nativew/esbuild-plugin-babel babel() ] }) .catch(() => process.exit(1))
browserslist
- Browserslist/browserslist: `not and_UC all`
-
Shoelace: A forward-thinking library of web components
Not these days, where most people are using evergreen browsers and iOS users upgrade very quickly.
Take a look at the defaults for browserslist, for example:
https://browsersl.ist/#q=defaults
It just barely supports Safari 15, on iOS only, and that’s likely to go away imminently because it’s under 1% usage.
-
How to Clone an Object in JavaScript
browserslist
-
How we improved page load speed for Next.js ecommerce website by 1.5 times
We compile JS only for modern browsers. The list of default browsers in Next can be overridden in your browserslist.
-
The Need for Speed: Next.js Performance Overhaul with Polyfills and SWC
In the latest versions of Next.js, targeting specific browsers or features is a breeze using the Browserslist configuration in your package.json file. The latest version of Next.js (v13) uses the following configuration by default:
-
How can I find out if I should support IE 9/10/11?
For a more general answer to browser support, check out https://github.com/browserslist/browserslist. That seems to be standard tool to help you with that.
-
WebGPU hits 40% availability 2 weeks after Chrome releases support
As someone else pointed out, you're overestimating Chrome/ium's market share.
Regardless, after the web.dev/baseline announcement, I looked at Browslerlist and one of our site's analytics and it is shocking how many people are not using the last two versions of evergreen browsers. There is a long tail of browser versions in those stats.
https://browsersl.ist
-
Baseline: a unified view of stable web features
The way folks handle this in production is with browserslist, which lets you query on different things you want to support: https://github.com/browserslist/browserslist. This in turn tells other parts of your tooling what language features to transpile for production.
I imagine tools could be built on top of that which do what you’re asking too
- Browserslist
-
Configure Stimulus with esbuild and Babel — Rails & Javascript
# .browserslist.rc # Babel Preset configuration # -------------------------- # Defines web-browser compatibility parameters for Babel to transpile your JS code. # This configuration is used by babel.config.js. # More information in here. # https://github.com/browserslist/browserslist # Support browsers with a market share higher than 5% >10%
What are some alternatives?
babel-plugin-prismjs - A babel plugin to use PrismJS with standard bundlers.
autoprefixer - Parse CSS and add vendor prefixes to rules by Can I Use
Highlight.js - JavaScript syntax highlighter with language auto-detection and zero dependencies.
parcel - The zero configuration build tool for the web. 📦🚀
esbuild - An extremely fast bundler for the web
caniuse - Raw browser/feature support data from caniuse.com
jsbundling-rails - Bundle and transpile JavaScript in Rails with esbuild, rollup.js, or Webpack.
rollup-plugin-postcss - Seamless integration between Rollup and PostCSS.
esbuild-rails - Esbuild Rails plugin
ECMAScript 6 compatibility table - ECMAScript compatibility tables
rollup-plugin-terser - Rollup plugin to minify generated bundle
react-typescript-webpack-starter - A starter project for using React, TypeScript, SCSS using Webpack 5.