esbuild-live-reload
By DavidColby
esbuild-rails
Esbuild Rails plugin (by excid3)
esbuild-live-reload | esbuild-rails | |
---|---|---|
1 | 3 | |
8 | 174 | |
- | - | |
0.0 | 4.8 | |
over 2 years ago | 11 months ago | |
Ruby | JavaScript | |
- | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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-live-reload
Posts with mentions or reviews of esbuild-live-reload.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-11-06.
-
Live reloading with Ruby on Rails and esbuild
Today we created an esbuild config file that enables live reloading (but not HMR) for our jsbundling-rails powered Rails application. As I mentioned at the beginning of this article, this is very much an experiment and this configuration has not been tested on an application of any meaningful size. You can find the finished code for this example application on Github.
esbuild-rails
Posts with mentions or reviews of esbuild-rails.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-09.
-
Is the default importmap method unrealistic in the most popular real world use cases?
Here's the setup I use for reloading with esbuild: https://github.com/excid3/esbuild-rails/blob/main/examples/esbuild.config.mjs
-
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))
-
Live reloading with Ruby on Rails and esbuild
Finally, if you're using esbuild with Rails and Stimulus, you'll probably find the esbuild-rails plugin from Chris Oliver useful.
What are some alternatives?
When comparing esbuild-live-reload and esbuild-rails you can also consider the following projects:
importmap-rails - Use ESM with importmap to manage modern JavaScript in Rails without transpiling or bundling.