Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Relay
  3. isomorphic-relay-router

isomorphic-relay-router

BSD-2-ClauseJavaScriptv0.8.3

Adds server-side rendering support to react-router-relay for isomorphic React/Relay applications.

GitHubGitHub
138 stars25 forks0 contributors

What is isomorphic-relay-router?

Isomorphic react-router-relay is a library that adds server-side rendering support to react-router-relay, enabling isomorphic (universal) React applications with Relay and GraphQL. It solves the problem of slow initial page loads and poor SEO in single-page applications by pre-rendering pages on the server with fully fetched data.

Target Audience

Developers building React applications with Relay and React Router who need server-side rendering for better performance, SEO, or user experience.

Value Proposition

It provides a straightforward way to implement SSR in Relay-based apps without duplicating data-fetching logic, leveraging the existing react-router-relay and isomorphic-relay ecosystems for a seamless development experience.

Overview

Adds server side rendering support to react-router-relay

Use Cases

Best For

  • Adding server-side rendering to existing React/Relay applications
  • Improving SEO for React single-page applications using GraphQL
  • Reducing initial page load time in Relay-powered web apps
  • Building isomorphic JavaScript applications with React Router and Relay
  • Migrating client-side React/Relay apps to support SSR
  • Ensuring content is crawlable by search engines in GraphQL-based frontends

Not Ideal For

  • Applications using Apollo Client or other non-Relay GraphQL clients, as it's specifically designed for Relay.
  • Projects with minimal server-side rendering needs, where the complexity of setup outweighs the benefits.
  • Teams working with React Router v4 or later, due to potential incompatibilities with the library's reliance on older versions.

Pros & Cons

Pros

Seamless SSR Integration

Integrates react-router-relay with isomorphic-relay to enable server-side rendering without duplicating GraphQL queries, as shown in the server and client code examples.

Data Consistency Across Environments

Uses `IsomorphicRelay.injectPreparedData` to transfer preloaded Relay data from server to client, preventing redundant fetches.

React Router Compatibility

Leverages react-router's `match` function for consistent routing during SSR and hydration, ensuring a unified codebase.

Relay Network Layer Support

Compatible with `Relay.DefaultNetworkLayer` and other Relay network layers, providing flexibility in data fetching setup.

Cons

Complex Configuration

Requires manual setup on both server and client, including network layer creation and data injection, which can be error-prone and time-consuming.

Outdated Dependencies

The README references react-router v2.3.0, which is outdated, and may not be compatible with newer versions of React Router or Relay Modern.

Limited Ecosystem and Examples

Only one example (todo) is provided, and the library has a small community, making troubleshooting and adoption more challenging.

Frequently Asked Questions

Quick Stats

Stars138
Forks25
Contributors0
Open Issues2
Last commit8 years ago
CreatedSince 2015

Tags

#isomorphic#isomorphic-javascript#relay#graphql#server-side-rendering#react#seo#universal-javascript#performance#react-router

Built With

R
React Router
R
Relay
R
React
G
GraphQL
N
Node.js

Included in

Relay284
Auto-fetched 17 hours ago

Related Projects

out of the boxout of the box

Relay is a JavaScript framework for building data-driven React applications.

Stars18,949
Forks1,895
Last commit19 hours ago
graphql-relay-jsgraphql-relay-js

A library to help construct a graphql-js server supporting react-relay.

Stars1,541
Forks176
Last commit9 months ago
react-router-relayreact-router-relay

[Deprecated] Relay Classic integration for React Router

Stars557
Forks65
Last commit7 years ago
react-relay-network-layerreact-relay-network-layer

ReactRelayNetworkLayer with middlewares and query batching for Relay Classic.

Stars277
Forks38
Last commit7 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub