Actions
Patch #42515
openIntroduce Stimulus and reimplement partial quote feature
Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
Due date:
% Done:
0%
Estimated time:
Description
This patch introduces Stimulus, a JavaScript framework within the Rails ecosystem, and reimplements the partial quote feature added in #41294 using Stimulus.
Why introduce Stimulus?¶
Here's why I propose introducing Stimulus:
- The current frontend JavaScript is becoming too complex and harder to develop. application.js is getting large, and everything operates in the global scope.
- It will make it easier to begin the migration from jQuery UI, which is no longer being developed. Stimulus helps create UI components in vanilla Rails, and many third-party components are also available.
- Stimulus works well with Turbo, which is a strong candidate to replace the deprecated rails-ujs, making future adoption smoother.
- Introducing a modern environment can revitalize Redmine development and simply make development more enjoyable.
As a next step after introducing Stimulus, I plan to migrate the tooltip implementation to Stimulus to further reduce the dependency on jQuery UI.
Implementation¶
- importmap-rails was also introduced to install Stimulus and its necessary libraries.
bin/rails stimulus:install
creates app/javascript/application.js by default. To avoid conflicts with the existing app/assets/application.js, I renamed the new file to main.js.- turndown, which is used for the partial quote feature, is now also installed via importmap-rails.
- I confirmed that CI builds pass and all system tests are successful.
Files
Related issues
Actions