David Boureau

Web developer & teacher @saaslit

How to add or remove a Stimulus controller

A quick memo about how to add or remove a Stimulus controller - I recommend to rely on generator this time.

How to add a Stimulus controller

bin/rails generate stimulus foo

I don't always rely on Rails generator, I parcularly enjoy to write Rails migration file by myself.

However I advise to stick with the generator for Stimulus, I find it safer, to avoid spelling mistakes - remember that Rails relies on naming conventions to wire things together.

Now the Stimulus controller is generated as follow inside the app/javascript/controllers/index.js file :

// app/javascript/controllers/index.js

import { application } from "./application"

import HelloController from "./hello_controller.js"
application.register("hello", HelloController)

import FooController from "./foo_controller.js"
application.register("foo", FooController)

How to remove a Stimulus controller

bin/rails destroy stimulus foo

This command may fail, so check that lines were correctly removed inside app/javascript/controllers/index.js.

If not, then manually remove the two lines, and run bin/rails stimulus:manifest:update.

☝️ Join the junior webdev newsletter

We try to send you every week language-agnostic algorithm exercice and relevant blog articles

Read more