StimulusReflex eliminates the complexity imposed by full-stack frontend frameworks. And, it's fast.
It works seamlessly with the Rails tooling you already know and love.
- Server-rendered HTML, delivered in milliseconds over the wire via Websockets
- ERB templates and partials, with first-class ViewComponent support
- Russian doll caching and ActiveJob
- StimulusJS and Turbolinks
- Built with CableReady, our secret power-move
Our goal is to help small teams do big things with familiar tools.
This project strives to live up to the vision outlined in The Rails Doctrine.
- Build a Twitter Clone in 10 Minutes (video)
- BeastMode - faceted search, with filtering, sorting and pagination
- StimulusReflex Patterns - single-file SR apps hosted on Glitch
- BoxDrop - a Dropbox-inspired concept demo
Please join over 1500 of us on Discord for support getting started, as well as active discussions around Rails, StimulusJS and CableReady.
Stop by #newcomers and introduce yourselves!
Your best bet is to ask for help on Discord before filing an issue on Github. We are happy to help, and we ask people who need help to come with all relevant code to look at. A git repo is preferred, but Gists are fine, too. If you need an MVCE template, try this.
Please note that we are not actively providing support on Stack Overflow. If you post there, we likely won't see it.
CLI and manual setup procedures are fully detailed in the official docs. For information on upgrading existing projects to v3.4, read this.
Everyone interacting with the StimulusReflex project’s codebases, issue trackers, chat rooms and forum is expected to follow the Code of Conduct.
This project uses Standard for Ruby code and Prettier-Standard for JavaScript code to minimize bike shedding related to source formatting.
Please run ./bin/standardize
prior to submitting pull requests.
View the wiki to see recommendations for configuring your editor to work best with the project.
- Always publish CableReady first!
- Update the
cable_ready
dependency version instimulus_reflex.gemspec
andpackage.json
- Make sure that you run
yarn
andbundle
to pick up the latest. - Bump version number at
lib/stimulus_reflex/version.rb
. Pre-release versions use.preN
- Run
rake build
- Run
bin/standardize
- Commit and push changes to github
- Run
rake release
- Run
yarn publish --no-git-tag-version
- Yarn will prompt you for the new version. Pre-release versions use
-preN
- Run
GITHUB_CHANGELOG_GENERATOR_TOKEN=SECRET rake changelog
- Commit and push changes to github
StimulusReflex is released under the MIT License.
Originally inspired by Phoenix LiveView. 🙌