Skip to main content

Stimulus Library

An extensive library of stimulus controllers for all use cases

NPM DownloadsMinified Size


We don't like bloat, so wherever possible we ship Stimulus-Library with zero third party dependencies. You won't find controllers here that simply wrap up other JS libraries like date-pickers. There are other libraries if that's what you want.

We specialise in simple, vanilla controllers that do one simple thing.


While Stimulus Library sets sensible defaults for all controllers, we appreciate that not all use-cases are the same. We've built all of our controllers to to be as flexible and configurable as possible to enable your application. Found a use-case we didn't consider? Open a Github issue and let us know!


Here at Stimulus Library, we hate installing 50 different node packages just to get 50 different Javascript *Sprinkles*. We provide you with a comprehensive set of lightweight controllers with the hope that when you find yourself needing a new behaviour, that we already have a controller that does it for you, without you having to install umpteen packages.

The library is fully tree-shakable, so install Stimulus-Library guilt free - only the controllers that you use are bundled into your application.

Fire and Forget

While all controllers in Stimulus-Library are composable and provide a comprehensive set of events that you can use to wire together multiple controllers - for simple things like autosizing textareas, you shouldn't have to remember to wire up the various DOM events to the corresponding Stimulus action, you should be able to just drop it in and forget about it.

Stimulus-Library, where it seems sensible, creates controllers that you can just "Fire and Forget". If you don't like that, you can turn it off and wire things up yourself. You're the boss.

Just Works (TM)

Stimulus Library aims to provide you with a toolbox of useful controllers that you can just drop into your application and they just work, seamlessly.