Name
React on Rails
Homepage
https://reactonrails.com/
Install instructions
https://reactonrails.com/docs/getting-started/create-react-on-rails-app/
Scope note for reviewers
This application is for React on Rails as the Rails-native React framework. The free, MIT-licensed core supports Rails + React integration, self-hosted deployment, React component rendering from Rails views, server-side rendering, TypeScript/JavaScript setup, Shakapacker/Webpack/Rspack integration, HMR, routing-library integration, and code splitting.
The repository also contains React on Rails Pro, an optional commercial extension for advanced production features such as the dedicated Node renderer, Rails-integrated React Server Components, streaming SSR, and caching. Pro features are called out explicitly below where relevant. They are self-hosted and do not require a proprietary hosting service, but they do require a commercial license for production use.
React on Rails 17.0.0 is currently in release-candidate status. Once the stable 17.0.0 release ships, we plan to update this request with the stable release link and final React 19.2 compatibility documentation.
Is your framework open source?
Yes.
React on Rails core is MIT-licensed and free to use. The core Ruby gem, npm package, generator, documentation, and create-react-on-rails-app --standard path are open source. Optional React on Rails Pro packages are commercial add-ons for teams that need advanced production server-rendering features.
Well maintained
React on Rails is actively maintained by ShakaCode. The project has been maintained since 2015 and continues to receive regular releases, bug fixes, documentation updates, and compatibility work across Rails, React, Shakapacker, Webpack/Rspack, and server rendering.
Recent maintenance signals:
- Latest stable release:
v16.6.0, published April 9, 2026.
- Current release-candidate train:
v17.0.0.rc.6, published June 22, 2026.
- npm package:
react-on-rails@16.6.0, modified June 22, 2026.
- RubyGems package:
react_on_rails@16.6.0.
- The GitHub repository is active, with ongoing pull requests for React Server Components, generator, diagnostics, and documentation improvements.
Active community
React on Rails has an established Rails + React community:
- GitHub repository: https://github.com/shakacode/react_on_rails
- About 5.2k GitHub stars and 629 forks as of June 26, 2026.
- More than 12 million total RubyGems downloads as of June 26, 2026.
- About 456k npm downloads in the last month as of June 26, 2026.
- Community support through GitHub Issues, GitHub Discussions, and the React + Rails Slack.
- Used in production Rails applications, including high-traffic server-rendered deployments.
Community resources:
Clear onboarding
New applications can start with one command. For the open-source React on Rails setup:
npx create-react-on-rails-app my-app --standard
cd my-app
bin/rails db:prepare
bin/dev
The generated app includes Rails, React, TypeScript by default, server-side rendering, Shakapacker, development scripts, hot reloading, and example pages.
The CLI also supports the Pro starter path for teams evaluating React on Rails Pro features:
npx create-react-on-rails-app my-app
Docs:
Ecosystem compatibility
React on Rails is designed to work with the React ecosystem inside Rails applications:
- React components are imported from normal JavaScript/TypeScript modules and rendered from Rails views.
- The npm package integrates with the Ruby gem so Rails can render React components with props supplied by controllers and views.
- Shakapacker provides standard Webpack-based Rails integration, with support for the broader npm ecosystem.
- The project includes documented integrations for Redux, React Router, TanStack Router, loadable-components, HMR, SSR, and TypeScript.
- React DevTools and browser debugging work as they do for normal client-rendered React components after hydration.
The main limitation is that React on Rails is intentionally Rails-first. It is a framework for Rails applications using React, not a pure JavaScript full-stack framework. Applications use Ruby/Rails conventions for routing, controllers, deployment, and server runtime. Advanced React Server Components and streaming SSR support are currently optional React on Rails Pro capabilities.
Self-hosting option
React on Rails applications are ordinary Rails applications and are self-hosted by default. They can be deployed to any environment that supports Rails, Ruby, Node.js for asset builds/server rendering, and the app's database.
The framework does not require a proprietary hosting provider. Core React on Rails features are available when self-hosted. Optional Pro features such as the Node renderer, streaming SSR, RSC integration, and caching are also designed for self-hosted Rails deployments, subject to the Pro license.
Developer Experience
React on Rails focuses on Rails-native developer ergonomics:
- Add React to Rails views with the
react_component helper instead of building a separate API-first SPA.
- Pass server-side props directly from Rails into React.
- Use TypeScript or JavaScript templates.
- Use Shakapacker for Webpack or Rspack builds.
- Use hot module replacement during development.
- Use automatic bundle generation and component registration to reduce boilerplate.
- Use SSR locally and in production with Rails conventions.
- Use a generated starter app with example pages and documented files.
Known boundaries:
- Developers need both Rails and Node toolchains.
- React on Rails Pro is the optional commercial path for advanced React 19.2-era server architecture features such as Rails-integrated RSC, streaming SSR, and the dedicated Node renderer.
- Because Rails owns the backend lifecycle, routing and data loading follow Rails conventions rather than the routing/data APIs of a JavaScript-only framework.
User Experience
React on Rails helps Rails developers ship React experiences without forcing a separate client/server architecture:
- HTML generation: Rails renders the page shell and React on Rails can server-render React components into that HTML for SEO and fast first paint.
- Data fetching: Rails controllers and views can assemble data before rendering, so the initial React tree receives server-prepared props and does not need a client-side fetch waterfall by default.
- Routing: Rails routing is the default server routing layer. Client routing is supported through libraries such as React Router and TanStack Router, including documented SSR patterns.
- Code splitting: documented loadable-components support and Shakapacker/Webpack integration support route-level and component-level code splitting with SSR compatibility.
- SSR: built-in server-side rendering is a core React on Rails use case. The Pro Node renderer adds a dedicated Node rendering service for higher-throughput SSR.
- Streaming/RSC: React on Rails Pro supports streaming SSR and React Server Components with Rails integration.
SSG is not React on Rails' primary model. The framework is aimed at dynamic Rails applications that generate HTML on the server at request time, with Rails caching and optional React on Rails Pro caching/streaming for performance-sensitive deployments.
Compatible with our future vision for React
React on Rails is evolving toward React's modern server architecture while preserving Rails-native deployment and data-loading patterns.
Current and planned alignment includes:
- React 18/19 compatibility work across the gem, npm package, examples, and generator.
- React Server Components support in React on Rails Pro, including Rails-aware RSC routing and bundle generation.
- Streaming SSR support through React's server rendering APIs.
- Explicit support for the
'use client' directive and clear separation between RSC client/server classification and React on Rails bundle-placement suffixes.
- Continued Shakapacker/Rspack modernization so Rails apps can use current JavaScript bundling and React ecosystem tools.
- A current React on Rails 17.0.0 release-candidate track, with a follow-up update planned here once the stable release ships.
React on Rails' goal is to give Rails teams a path that aligns with React's full-stack architecture direction without requiring them to abandon Rails conventions, deployment practices, or existing Rails applications.
Name
React on Rails
Homepage
https://reactonrails.com/
Install instructions
https://reactonrails.com/docs/getting-started/create-react-on-rails-app/
Scope note for reviewers
This application is for React on Rails as the Rails-native React framework. The free, MIT-licensed core supports Rails + React integration, self-hosted deployment, React component rendering from Rails views, server-side rendering, TypeScript/JavaScript setup, Shakapacker/Webpack/Rspack integration, HMR, routing-library integration, and code splitting.
The repository also contains React on Rails Pro, an optional commercial extension for advanced production features such as the dedicated Node renderer, Rails-integrated React Server Components, streaming SSR, and caching. Pro features are called out explicitly below where relevant. They are self-hosted and do not require a proprietary hosting service, but they do require a commercial license for production use.
React on Rails 17.0.0 is currently in release-candidate status. Once the stable 17.0.0 release ships, we plan to update this request with the stable release link and final React 19.2 compatibility documentation.
Is your framework open source?
Yes.
React on Rails core is MIT-licensed and free to use. The core Ruby gem, npm package, generator, documentation, and
create-react-on-rails-app --standardpath are open source. Optional React on Rails Pro packages are commercial add-ons for teams that need advanced production server-rendering features.Well maintained
React on Rails is actively maintained by ShakaCode. The project has been maintained since 2015 and continues to receive regular releases, bug fixes, documentation updates, and compatibility work across Rails, React, Shakapacker, Webpack/Rspack, and server rendering.
Recent maintenance signals:
v16.6.0, published April 9, 2026.v17.0.0.rc.6, published June 22, 2026.react-on-rails@16.6.0, modified June 22, 2026.react_on_rails@16.6.0.Active community
React on Rails has an established Rails + React community:
Community resources:
Clear onboarding
New applications can start with one command. For the open-source React on Rails setup:
npx create-react-on-rails-app my-app --standard cd my-app bin/rails db:prepare bin/devThe generated app includes Rails, React, TypeScript by default, server-side rendering, Shakapacker, development scripts, hot reloading, and example pages.
The CLI also supports the Pro starter path for teams evaluating React on Rails Pro features:
Docs:
Ecosystem compatibility
React on Rails is designed to work with the React ecosystem inside Rails applications:
The main limitation is that React on Rails is intentionally Rails-first. It is a framework for Rails applications using React, not a pure JavaScript full-stack framework. Applications use Ruby/Rails conventions for routing, controllers, deployment, and server runtime. Advanced React Server Components and streaming SSR support are currently optional React on Rails Pro capabilities.
Self-hosting option
React on Rails applications are ordinary Rails applications and are self-hosted by default. They can be deployed to any environment that supports Rails, Ruby, Node.js for asset builds/server rendering, and the app's database.
The framework does not require a proprietary hosting provider. Core React on Rails features are available when self-hosted. Optional Pro features such as the Node renderer, streaming SSR, RSC integration, and caching are also designed for self-hosted Rails deployments, subject to the Pro license.
Developer Experience
React on Rails focuses on Rails-native developer ergonomics:
react_componenthelper instead of building a separate API-first SPA.Known boundaries:
User Experience
React on Rails helps Rails developers ship React experiences without forcing a separate client/server architecture:
SSG is not React on Rails' primary model. The framework is aimed at dynamic Rails applications that generate HTML on the server at request time, with Rails caching and optional React on Rails Pro caching/streaming for performance-sensitive deployments.
Compatible with our future vision for React
React on Rails is evolving toward React's modern server architecture while preserving Rails-native deployment and data-loading patterns.
Current and planned alignment includes:
'use client'directive and clear separation between RSC client/server classification and React on Rails bundle-placement suffixes.React on Rails' goal is to give Rails teams a path that aligns with React's full-stack architecture direction without requiring them to abandon Rails conventions, deployment practices, or existing Rails applications.