Ruby back-ends servers

  • Rails integration is provided for both WebPacker and Sprockets. Rake tasks are provided to assist with the configuration.

  • Sinatra views may be used to produce JavaScript from Ruby, enabled by require "ruby2js/sinatra"

  • CGI scripts may also be used to produce JavaScript from Ruby. This can be combined with Wunderbar to produce both HTML and JavaScript, enabled by require "wunderbar/script".

  • Haml scripts can be written in Ruby via a filter enabled by require "ruby2js/haml"

JavaScript front-end build tools

Plugins are available for both Snowpack and Vite. These plugins support Hot Module Replacement and Refresh. The ESM filter lets you author import and export statements, and the autoexports and autoimports options can often relieve you of the need to do so.

JavaScript bundlers

A Rollup plugin and a Webpack loader are available. Again, the ESM filter and autoexports and autoimports options are useful with bundlers.

Web Components

Filters are available for jQuery, litElement, React, and Stimulus. The React filter also supports Preact.

A Vue filter is available, but it has not yet been upgraded to support Vue3.


A Node filter is available, as well as a register module. In most cases it will be the CJS filter rather than the ESM filter that you will want to use.

Next: ES Levels