@alexseitsinger/react-ssr
TypeScript icon, indicating that this package has built-in type declarations

10.0.0 • Public • Published

React-SSR (Frontend)

A webpack compiler and provider for render and serving server-side react. Expected to be used in combination with React-SSR (Backend)

Installation

yarn add @alexseitsinger/react-ssr

Modules

browserBundle

The entry point for the client-side bundle.

import { browserBundle } from "@alexseitsinger/react-ssr"

export const store = browserBundle({
  App,
  createStore,
  render: (PreparedApp, { store, browserHistory }) => {
    hydrate(<PreparedApp />, document.getElementById("app"))
  }),
})

serverBundle

The entry point for a server-side bundle.

import { serverBundle } from "@alexseitsinger/react-ssr"

export default serverBundle({
  App,
  createStore,
  render: (PreparedApp, { store, serverHistory, url }) => {
    const html = renderToString(<PreparedApp />)
    const state = store.getState()
    return {
      html,
      state,
    }
  },
})

Scripts

The script to start the compilation (development only) and provider servers.

yarn react-server [--address <value> ...]

Options

Name Description Default Required
address The address the servers should listen on. 0.0.0.0 yes
compilerPort The port the compiler server should use. 8081 no
providerPort The port the provider server should ue. 8082 no
browserConfig The path to the browser-side webpack config. undefined yes
serverConfig The path to the server-side webpack config undefined yes
renderURL The endpoint that provides server-side renders. /render no
reducerDirs Extra paths to reducer directories within the app. undefined no
appPath The base path to use when finding default state files. undefined yes
defaultStateURL The url to use for retrieving default state. /defaultState no
defaultStateFileName The file name to look for which contains the default state. defaultState.json no
browserStatsURL The url to use for retrieving the current browser bundle's webpack stats. /browserStats no
browserStatsPath The path to prepend to the browser stats file. undefined yes
browserStatsFileName The name of the browser stats file. stats.json no
secretKeyValue The secret key value to match against when receiving requests. undefined no
secretKeyHeaderName The name of the header that will contain the secret key. secret-key no
serverBundlePath The path to find the server bundle. undefined yes
serverBundleName The name of the server bundle. server.js no
allowedFiles Names of files that are allowed to be read. webpack.json no
ignoredFiles Names of files that are never allowed to be read. undefined no

Dependents (0)

Package Sidebar

Install

npm i @alexseitsinger/react-ssr

Weekly Downloads

3

Version

10.0.0

License

BSD-2-Clause

Unpacked Size

68.8 kB

Total Files

23

Last publish

Collaborators

  • alexseitsinger