{"adoption": {"forks": 739, "observed_at": "2026-08-28T04:09:48.499154+00:00", "stars": 6776}, "canonical_url": "https://ross.abutalabs.com/products/react-rails", "card": {"archived": false, "artifact_type": "library", "description": "Integrate React.js with Rails views and controllers, the asset pipeline, or webpacker.", "domain": ["web-development", "frontend", "developer-tools"], "enriched": true, "function": ["ssr", "templating", "frontend-framework", "middleware"], "health_score": 77, "homepage": null, "language": "JavaScript", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["reactjs/react-rails"], "name": "reactjs/react-rails", "platform": ["ruby"], "pushed_at": "2026-07-31T21:53:06+00:00", "repo": "reactjs/react-rails", "stars": 6776, "tags": ["react", "rails", "ruby-gem", "server-side-rendering", "jsx", "webpacker", "sprockets", "shakapacker", "nodejs", "web-server"], "topics": ["react-rails", "jsx", "react", "rails", "ruby", "sprockets", "webpacker"], "urls": [], "use_cases": ["render React components inside Rails views", "server-side render React in a Rails app", "use JSX with the Rails asset pipeline", "mount React components via Sprockets or Shakapacker", "add React to an existing Rails monolith", "wire React components to Rails controllers and props"], "what_it_is": "A Ruby gem that integrates React.js into Ruby on Rails applications, supporting server-side and client-side rendering with views, controllers, and asset pipelines like Sprockets, Propshaft, and Shakapacker. It allows writing React components in JSX, ES6, TypeScript, or CoffeeScript within Rails projects.", "when_to_avoid": ["you are starting a new project and want active development and modern React features like Server Components - prefer React on Rails", "you need a dedicated Node-based rendering pipeline with TypeScript support", "your frontend is a separate SPA not embedded in Rails views"], "when_to_choose": ["you have an existing Rails app and want to add React components incrementally", "you use Sprockets, Propshaft, or Shakapacker and want React integration", "you need simple server-side rendering of React within Rails views"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/react-rails", "repo": "reactjs/react-rails", "role": "main", "score": 66}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.499154+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:42:23.638325+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0382e89d7a959fca8da7cc0024de4a6ceaeb4bd31df234053619625730ebf3c", "fetched_at": "2026-08-28T04:09:48.499154+00:00", "kind": "readme", "missing": false, "url": "https://github.com/reactjs/react-rails"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 95, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4787, "days_push": 33, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 66, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}