react-on-rails-pro
v17.2.1
Published
React on Rails Pro package with React Server Components support
Readme
react-on-rails-pro
The client-side JavaScript package for React on Rails Pro. This package replaces the base react-on-rails package and re-exports everything from it, plus Pro-exclusive features like React Server Components support.
Installation
npm install react-on-rails-pro
# or
yarn add react-on-rails-pro
# or
pnpm add react-on-rails-proImportant: When using the react_on_rails_pro Ruby gem, you must use this package (react-on-rails-pro) instead of react-on-rails. If the Pro gem detects the base react-on-rails npm package at runtime, it will raise an error.
Free in development, test, CI, and staging, and in production for small organizations, charities, schools, and hospitals; larger organizations subscribe at https://pro.reactonrails.com/ ($1,800 per year per organization). No license key is needed to run Pro.
Usage
Component Registration
// Import from react-on-rails-pro (NOT react-on-rails)
import ReactOnRails from 'react-on-rails-pro';
import MyComponent from './MyComponent';
// Register components for use in Rails views
ReactOnRails.register({ MyComponent });React Server Components (Pro-exclusive)
import RSCRoute from 'react-on-rails-pro/RSCRoute';
import registerServerComponent from 'react-on-rails-pro/registerServerComponent/client';
import wrapServerComponentRenderer from 'react-on-rails-pro/wrapServerComponentRenderer/client';
// Register a server component for client-side hydration
registerServerComponent('MyServerComponent');Package Relationship
react-on-rails-pro (this package)
└── react-on-rails (base package, automatically installed as dependency)This package wraps and extends the base react-on-rails package. You only need to install react-on-rails-pro — the base package is included as a dependency.
What this package adds over react-on-rails
- React Server Components support (
RSCRoute,RSCProvider,registerServerComponent) - Server component renderer wrapping (
wrapServerComponentRenderer) - Conditional exports for
react-serverandnodeenvironments - Seamless integration with the
react_on_rails_proRuby gem
Exports
| Export Path | Description |
| ------------------------------------------------------- | ------------------------------------------------------- |
| react-on-rails-pro | Main entry — full ReactOnRails API (same as base + Pro) |
| react-on-rails-pro/client | Client-only build (no SSR utilities) |
| react-on-rails-pro/railsAction | CSRF-aware typed Rails action caller |
| react-on-rails-pro/RSCRoute | React Server Components route component |
| react-on-rails-pro/RSCProvider | RSC provider component |
| react-on-rails-pro/registerServerComponent/client | Client-side server component registration |
| react-on-rails-pro/registerServerComponent/server | Server-side server component registration |
| react-on-rails-pro/wrapServerComponentRenderer/client | Client-side renderer wrapping |
| react-on-rails-pro/wrapServerComponentRenderer/server | Server-side renderer wrapping |
Rails-Side Setup
This npm package works with the react_on_rails_pro Ruby gem:
# Gemfile
gem "react_on_rails_pro"Or use the generator for automated setup:
rails generate react_on_rails:install --proSee the full installation guide.
Documentation
- Installation Guide
- Configuration Reference
- React Server Components Tutorial
- Upgrade from OSS to Pro
- React on Rails Pro Overview
License
React on Rails Pro is free in development, test, CI, and staging for everyone,
and free in production for small organizations (under 10 people, under $1M
revenue, under $1M raised) and for charities, schools, and hospitals at any
size. Larger organizations subscribe for production use at
pro.reactonrails.com: $1,800 per year covers
the whole organization. No license key is needed to run it; a key from your
subscription only marks your pages Licensed. See
the license.
Questions: [email protected].
