Bundlebun is a Ruby gem that packages the Bun JavaScript runtime, package manager, and bundler directly into a Rails project's Gemfile. This eliminates the need for separate Node.js installation, Docker, or version managers, ensuring every developer gets the exact same Bun version after running `bundle install`. The post also provides a comprehensive history of Rails asset pipelines from Rails 2 through Rails 8, covering Sprockets, Webpacker, importmap-rails, and the #nobuild movement, explaining why #nobuild has real limitations for apps using modern JavaScript ecosystems (TypeScript, JSX, npm packages). Bundlebun integrates with vite-ruby, jsbundling-rails, cssbundling-rails, and ExecJS, and features automatic gem releases tied to Bun releases via GitHub Actions cron jobs.

19m read timeFrom yaroslav.io
Post cover image
Table of contents
How it started ¶Ways to solve the issue ¶Rails history with asset pipelines and JavaScript runtimes ¶#nobuild ¶Why Bun ¶Meet Bundlebun ¶Time to try it ¶

Sort: