
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
react-on-rails-pro-node-renderer
Advanced tools
react-on-rails-pro JavaScript for react_on_rails_pro Ruby gem
Performance enhancements and advanced features for React on Rails.
See the CHANGELOG for release updates and upgrade details.
React on Rails Pro is a commercial extension to the open-source React on Rails gem that provides advanced performance optimizations and enterprise features for Rails applications using React.
Key Points:
react_on_rails_pro/┌─────────────────────────────────────────────────┐
│ React on Rails Pro (this package) │
│ • SSR performance enhancements │
│ • React Server Components │
│ • Advanced caching │
│ • Node.js rendering pool │
└─────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────┐
│ React on Rails (open-source, required) │
│ • Basic SSR │
│ • Component registration │
│ • Rails integration │
└─────────────────────────────────────────────────┘
⚠️ Important: All environments (development, test, CI) require a valid license. The free license is perfect for these use cases!
Get your FREE license in 30 seconds:
export REACT_ON_RAILS_PRO_LICENSE="eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9..."
📖 Detailed setup instructions: See LICENSE_SETUP.md for complete configuration guide, team setup, CI/CD integration, and troubleshooting.
React on Rails Pro delivers measurable performance improvements for production applications:
Case Study: Popmenu
Consider React on Rails Pro if you:
| Feature | Open Source | Pro |
|---|---|---|
| Basic SSR | ✅ | ✅ |
| Component Registration | ✅ | ✅ |
| Rails Integration | ✅ | ✅ |
| Fragment Caching | ❌ | ✅ |
| Prerender Caching | ❌ | ✅ |
| Proper Node Renderer | ❌ | ✅ |
| React Server Components | ❌ | ✅ |
| Streaming SSR | ❌ | ✅ |
| Code Splitting (SSR) | ❌ | ✅ |
| Bundle Caching | ❌ | ✅ |
| Professional Support | ❌ | ✅ |
Cache React components at the Rails view layer with intelligent cache key generation.
# Cache component output with automatic cache key from props
<%= cached_react_component("UserProfile", cache_key: [@user]) do
{ user_id: @user.id }
end %>
# Lazy evaluation of props - only evaluated on cache miss
<%= cached_react_component("ExpensiveComponent", cache_key: [@user, @post]) do
expensive_calculation
end %>
Benefits:
📖 Learn more: docs/caching.md
Cache the JavaScript evaluation results on the Node.js side.
# In config/initializers/react_on_rails_pro.rb
ReactOnRailsPro.configure do |config|
config.prerender_caching = true
end
Benefits:
📖 Learn more: docs/caching.md
High-performance standalone Node.js server for server-side rendering with connection pooling and automatic worker management.
Key Advantages:
Example Configuration:
// react-on-rails-pro/react-on-rails-pro-node-renderer.js
const { reactOnRailsProNodeRenderer } = require('@shakacode-tools/react-on-rails-pro-node-renderer');
reactOnRailsProNodeRenderer({
bundlePath: path.resolve(__dirname, '../app/assets/webpack'),
port: 3800,
workersCount: 4,
supportModules: true, // Required for loadable-components
});
📖 Learn more: docs/node-renderer/basics.md
Full support for React 18+ Server Components with streaming.
# Stream React Server Components
<%= stream_react_component("MyServerComponent", props: @props) %>
# Or with caching
<%= cached_stream_react_component("MyServerComponent", props: @props) %>
Benefits:
📖 Learn more: Contact justin@shakacode.com for RSC documentation
Speed up webpack rebuilds by caching unchanged bundles.
Benefits:
📖 Learn more: docs/bundle-caching.md
Prevent state leaks between SSR requests.
ReactOnRailsPro.configure do |config|
# Run JavaScript before each render to clear global state
config.ssr_pre_hook_js = "global.myLeakyLib && global.myLeakyLib.reset();"
end
📖 Learn more: docs/configuration.md
| React on Rails Pro | React on Rails | Rails | Ruby | React |
|---|---|---|---|---|
| 4.x | >= 16.0 | >= 7.0 | >= 3.2 | >= 18 |
| 3.x | >= 13.0 | >= 6.0 | >= 3.0 | >= 16.8 |
📖 Check compatibility: See CHANGELOG.md for version-specific requirements
1. Get a License
Visit https://shakacode.com/react-on-rails-pro to get your FREE license (takes 30 seconds).
2. Set License Environment Variable
# Add to .env or your shell profile
export REACT_ON_RAILS_PRO_LICENSE="eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9..."
3. Install the Gem
Since React on Rails Pro is part of the public monorepo, you can install it directly from GitHub:
# Gemfile
gem 'react_on_rails_pro', '~> 4.0'
Or use a specific version/tag:
gem 'react_on_rails_pro', git: 'https://github.com/shakacode/react_on_rails.git',
glob: 'react_on_rails_pro/*.gemspec',
tag: 'v4.0.0'
Then run:
bundle install
4. Configure (Optional)
Create config/initializers/react_on_rails_pro.rb:
ReactOnRailsPro.configure do |config|
# Enable prerender caching for performance
config.prerender_caching = true
end
5. Verify Installation
rails console
> ReactOnRails::Utils.react_on_rails_pro?
# => true
🎉 Done! You're now using React on Rails Pro.
The Pro dummy app demonstrates all features in action:
Location: spec/dummy (in this monorepo)
Features Demonstrated:
cached_react_componentRunning the Example:
# From the monorepo root
cd react_on_rails_pro/spec/dummy
bundle install
yarn install
# Start the Rails app
bin/dev
Visit http://localhost:3000 to see the examples.
📖 Learn more: See spec/dummy/README.md
Check out these production applications using React on Rails Pro:
Need help with your React on Rails project?
ShakaCode offers:
Book a consultation → with Justin Gordon, creator of React on Rails.
React on Rails Pro is developed and maintained by ShakaCode, the team behind:
Q: Is React on Rails Pro free?
A: Yes for non-commercial use! You get a FREE 3-month license (renewable) for:
Production deployments require a commercial license. Learn more →
Q: Do I need a license for development?
A: Yes, but it's FREE! Register at shakacode.com/react-on-rails-pro to get your free 3-month license in 30 seconds (no credit card required).
Q: Can multiple developers share one license?
A: Yes! All developers in an organization can share the same license. You can use a shared license via environment variable or configuration file. See team setup →
Q: What happens when my free license expires?
A:
Q: How much does a commercial license cost?
A: Pricing is customized based on your needs. Contact justin@shakacode.com for a quote.
Q: What's the difference between Pro and open-source React on Rails?
A: Pro adds performance features on top of the open-source gem:
Q: Do I need the Node Renderer?
A: No, it's optional but recommended. The Node Renderer provides the best performance for high-traffic sites and is required for:
For apps that do not require advanced performance features, ExecJS (the default) works fine.
Q: Is React on Rails Pro compatible with my React version?
A: Pro works with React 16.8+. For React Server Components and Streaming SSR, you need React 18+. See requirements →
Q: Can I use Pro with Vite instead of Webpack/Shakapacker?
A: The Node Renderer currently expects webpack bundles. For Vite support, contact justin@shakacode.com.
Q: Does Pro work with TypeScript?
A: Yes! Pro works seamlessly with TypeScript applications.
Q: How do I upgrade from an older Pro version?
A: Check the CHANGELOG for breaking changes and migration steps. For major upgrades, we recommend professional support: justin@shakacode.com
Q: Where do I start?
A: Follow our Quick Start guide - you can be up and running in 5 minutes!
Q: Can I try Pro before buying?
A: Yes! Get a FREE 3-month license to evaluate all features. No credit card required. Get started →
Q: Is there a demo application?
A: Yes! The spec/dummy app demonstrates all Pro features. See examples →
React on Rails Pro is commercial software. See LICENSE for the complete license agreement.
Summary:
Get your FREE license: https://shakacode.com/react-on-rails-pro
React on Rails Pro is part of the React on Rails monorepo. For contribution guidelines, see:
Note: Pro features are developed by the ShakaCode team and licensed customers only.
Made with ❤️ by ShakaCode
FAQs
React on Rails Pro Node Renderer for server-side rendering
The npm package react-on-rails-pro-node-renderer receives a total of 37 weekly downloads. As such, react-on-rails-pro-node-renderer popularity was classified as not popular.
We found that react-on-rails-pro-node-renderer demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.