← Back to list

javascript-in-rails
by bastos
Bastos' Claude Code Ruby Plugin Marketplace
⭐ 0🍴 0📅 Jan 24, 2026
SKILL.md
name: javascript-in-rails description: Guidance for integrating JavaScript in Rails: import maps, jsbundling-rails (Bun/esbuild/Rollup/Webpack), Turbo helpers, request.js, and UJS replacements. Use when the user asks about JavaScript setup, bundlers, or client-side behavior in Rails. version: 1.0.0
JavaScript in Rails
Guide Rails applications through JavaScript setup, bundling choices, and Turbo/UJS replacements using Rails 7+ conventions.
Choose a JavaScript strategy
Import maps (default for Rails 7+)
- No Node.js or Yarn required.
- No build step; run
bin/rails server. - Use for most Hotwire-first apps and smaller JS needs.
JavaScript bundlers
- Use Bun, esbuild, Rollup, or Webpack.
- Bundlers integrate via
jsbundling-rails. - Run
bin/devduring development. - Node.js + Yarn required for esbuild/Rollup/Webpack.
- Bun is both runtime and bundler.
Import maps
Install (existing apps):
bundle add importmap-rails
bin/rails importmap:install
Pin packages:
bin/importmap pin react react-dom
Import in app/javascript/application.js:
import React from "react"
import ReactDOM from "react-dom"
Common files:
config/importmap.rbapp/javascript/application.js
Bundlers
Create a new app with a bundler:
rails new my_app --javascript=bun
Available options:
bunesbuildrollupwebpack
Turbo and UJS replacements
Use Turbo helpers and data attributes instead of Rails UJS:
Method override:
<%= link_to "Delete", post_path(@post), data: { turbo_method: "delete" } %>
Confirmations:
<%= link_to "Delete", post_path(@post), data: { turbo_confirm: "Are you sure?" } %>
Prefer button_to for non-GET actions when possible.
Ajax and request.js
Non-GET requests require X-CSRF-Token. Rails Request.JS handles this:
import { FetchRequest } from "@rails/request.js"
const request = new FetchRequest("post", "/posts", {
body: JSON.stringify({ post: { title: "Hello" } })
})
await request.perform()
When to use this skill
- Choosing between import maps and bundlers
- Setting up or migrating JavaScript tooling
- Turbo helpers and UJS replacements
- request.js and CSRF-safe Ajax
Score
Total Score
65/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
✓最近の活動
1ヶ月以内に更新
+10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
✓タグ
1つ以上のタグが設定されている
+5
Reviews
💬
Reviews coming soon
