:rocket: Blazing fast page load and seamless navigation.
Consider Next.js instead.
React framework with server render for blazing fast page load and seamless transitions between pages in the browser.
The easiest way to get started is with our yeoman generator:
# install yeoman npm install -g yo
install the react-server generator
npm install -g generator-react-server
make a new react-server project in the CURRENT directory
run the new app
npm run start
go to http://localhost:3000
One of the great things about React is its support for server-side rendering, which can make sites show up faster for users and play better with search engine bots.
However, when you actually try to use React for server-side rendering, you quickly run into a bunch of practical problems, such as:
react-serveris a framework designed to make universal (née isomorphic) React easier to write, providing standard answers for these questions and more. When you write your app for
react-server, you concentrate on your React components, and
react-servertakes care of everything else that's needed to run and deploy real React server-rendered apps. Under the hood,
react-serveris doing a bunch of clever optimizations, many borrowed from the ideas behind Facebook's Big Pipe, to make sure that your site shows up as quickly as humanly possible for your users.
Once you're hungry for more, dig into the React Server documentation and the
This release is a major, potentially breaking, change which upgrades react-server's dependencies from webpack 1.x to webpack 4.x, and babel 6.x to babel 7.x.
If using default react-server configuration, you should be able to update to 1.0.0 without issue. However, if you have extended the default react-server webpack config using the
webpackConfigoption, you may need to update your webpack configuration options to match Webpack 4.x Documentation.
Note: If you are having trouble loading css bundles in
mode = production, try switching from
Great! There's a lot to do! See the contributing guide to get started.
This is a Lerna respository with multiple npm packages! Check out the