Ship modern React in Rails - fast, and prove it.
ShakaStack connects four open-source ShakaCode projects, ShakaPerf repository source and exact package records, and an optional commercially licensed React on Rails Pro tier. Build, test, measure, and deploy without splitting Rails from a separate frontend app.
Modern React on Rails is harder than it should be.
You picked Rails because it’s productive and joyful. Then the frontend got complicated - and somewhere along the way your app got slow, your config got fragile, and your bills went up.
Bolting React onto Rails
Webpacker’s deprecated, SSR is fiddly, and React 19 / RSC feel out of reach. You’re duct-taping a frontend instead of shipping features.
Pages that lost their speed
Slow LCP and hydration drag down SEO and conversions - and you have no rigorous way to measure it or prove a fix actually worked.
The infra & config tax
Heroku bills climb, build configs rot, and every upgrade is a gamble. The stack fights you instead of working for you.
Keep the Rails workflow your team knows. Add modern React, measurable performance, and a familiar path to production without splitting the app by default.
Maintainers with a public track record.
ShakaCode has consulted since 2011 and maintains the public Rails + React foundations behind this stack. Source, documentation, licenses, and support routes stay visible so teams can evaluate each layer on its own terms.
Build → test → prove → deploy.
Four phases, four open-source projects, and ShakaPerf evaluated by artifact - one path from Rails + React code to measured production changes. Each layer links to its public source, docs, and license so you can evaluate it independently. Tap a layer to see how it moves your app forward.
React on Rails
Open-source Rails + React integration, with an optional Pro rendering tier.
Use the MIT-licensed core to mount React components from Rails views and run server-side rendering with hydration. Add commercially licensed React on Rails Pro for React Server Components, streaming SSR, fragment caching, and a dedicated Node renderer.
Clear paths from evaluation to production.
Public source is not the same as an open-source license. Each path keeps its license, evidence, and support route explicit.
Five public project records, one checked date.
Checked statically curated
Shakapacker
Official Webpacker successorE2E on Rails
ShakaPerf
New public repositoryControl Plane Flow
Open-source foundations
React on Rails core, Shakapacker, E2E on Rails, and Control Plane Flow use open-source licenses. Community help is available through public docs, Discussions, and Slack; no service-level agreement is implied.
React on Rails Pro
React on Rails Pro is commercially licensed. Review the published EULA and subscription terms before use; paid subscriptions include updates and reasonable maintainer support without implying an SLA.
ShakaPerf by artifact
The repository source uses the ShakaPerf License. Separately, npm registry JSON metadata for shaka-perf 0.1.3 and shaka-bundle-size 0.0.12 reports MIT. Inspect the exact source or package you plan to use.
Mix the best of Rails and React. Stay flexible.
ShakaStack blends the developer experiences teams love - Rails' conventions and productivity with modern React 19, RSC, and TanStack. It's also the most agent-capable way to build, so whether a human or an AI agent writes the code, it lands on a foundation that keeps it fast and maintainable.
Add TanStack incrementally
Add React on Rails Pro and the TanStack libraries you want to the app you already have. Keep your routes, conventions, and team while adopting the UI page by page.
- Adopt it page by page, alongside your existing Rails views
- Great performance out of the box - SSR, hydration, streaming
- Choose Query, Router, and Table independently
Spin up with full flexibility
Begin a new Rails app and mix exactly what you want, per page: classic Rails views, React on Rails components, React 19 + RSC, and TanStack. Use as much or as little as you need.
- Classic Rails, React components, RSC, or TanStack - your call
- The official starter gives you a deployable baseline on day one
- Scale from a sprinkle of React to a full TanStack app
The most agent-capable stack
AI agents thrive on convention. Rails' structure, explicit typed JSON contracts, and the starter's AGENTS.md guardrails give an agent a map it can't sprawl outside of, so AI-assisted changes stay reviewable and maintainable instead of turning into slop. Humans remain responsible for review and decisions. In ShakaCode's separate ShakaPerf optimization loop, only optimization changes that ShakaPerf proves faster survive the loop.
It doesn't stop at writing code: ShakaCode's public agent-workflows repository documents the guardrails and workflows behind this approach.
Live demos & starters, with source.
Each card links to a running deployment or proof artifact and its public source. Evaluate the stack, inspect the evidence, compare approaches, or fork a starter.
Examples that include React on Rails Pro expose public source for inspection; use of those Pro components is governed by the React on Rails Pro license.
Legacy Tutorial App
The original full-app React on Rails tutorial, using Shakapacker with server rendering.
ShakaPerf audit report
An integration-test report snapshot from ShakaPerf's audit-results fixture, pinned to the tested repository commit.
More React on Rails demos at reactonrails.com/examples →
Start from a working app, not a slide deck.
The official starter
A deployable Rails 8 + React on Rails Pro app with TanStack Router, Query & Table, shadcn/ui, and an RSC showcase. It includes typed JSON contracts, CSRF-aware fetch, URL-synced query keys, mutations, invalidation, SSR, and hydration.
Its AGENTS.md encodes the thesis as an engineering guardrail: “do not add TanStack Start, Vite, or file-based routing.”
Talk to the maintainers.
ShakaCode builds and maintains every project in the stack - and helps teams ship with SSR, RSC, bundling, E2E tests, deploys, and performance. Book a free 30-minute call.