Skip to content

Renders nested React components with asynchronous cached loading; useful for GraphQL clients and server side rendering.

Notifications You must be signed in to change notification settings

jaydenseric/react-waterfall-render

Repository files navigation

react-waterfall-render

Renders nested React components with asynchronous cached loading.

Useful for GraphQL clients (e.g. graphql-react) and server side rendering.

Installation

For Node.js, to install react-waterfall-render and its react peer dependency with npm, run:

npm install react-waterfall-render react

For Deno and browsers, an example import map (realistically use 4 import maps, with optimal URLs for server vs client and development vs production):

{
  "imports": {
    "react": "https://esm.sh/react@18.2.0",
    "react-waterfall-render/": "https://unpkg.com/react-waterfall-render@5.0.0/"
  }
}

Use the WaterfallRenderContext in React components to declare asynchronous cached loading, and use the function waterfallRender to server side render your React app in a fully loaded state.

Requirements

Supported runtime environments:

  • Node.js versions ^14.17.0 || ^16.0.0 || >= 18.0.0.
  • Deno, importing from a CDN that might require an import map for dependencies.
  • Browsers matching the Browserslist query > 0.5%, not OperaMini all, not dead.

Non Deno projects must configure TypeScript to use types from the ECMAScript modules that have a // @ts-check comment:

Exports

The npm package react-waterfall-render features optimal JavaScript module design. It doesn’t have a main index module, so use deep imports from the ECMAScript modules that are exported via the package.json field exports:

About

Renders nested React components with asynchronous cached loading; useful for GraphQL clients and server side rendering.

Topics

Resources

Stars

Watchers

Forks

Sponsor this project