react-server

:rocket: Blazing fast page load and seamless navigation.

Github星跟踪图

Build Status
NPM version
NPM downloads per month
Chat on Slack
NPM license
Powered by Redfin

React framework with server render for blazing fast page load and seamless
transitions between pages in the browser.


Just getting started with react-server?

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
yo react-server

# run the new app
npm run start
# go to http://localhost:3000

That hooks you up with react-server-cli, which
will take care of the server part and get you up and running right away.

Why react-server?

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:

  • How should I load data on the server for my components?
  • How do I ensure that the client and the server load the same data and generate
    the same HTML markup?
  • How do I write code that can be both generated server-side and be part of a
    single-page application (SPA)?
  • How should I optimize the delivery of my JavaScript and CSS?
  • How do I find out about and follow performance best practices?
  • How do I ensure that my site is streamed to the browser as quickly as humanly
    possible?
  • How can I make my app resilient when my backend has high latency spikes?

react-server is 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-server takes care of everything else that's needed to run and deploy
real React server-rendered apps. Under the hood, react-server is 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 react-server code.


Migrating from react-server 0.8.1 to 1.0.0

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 webpackConfig option, 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 import to require() syntax. https://github.com/webpack-contrib/mini-css-extract-plugin/issues/27

Want to help?

Great! There's a lot to do!
See the contributing guide to get started.

Where's all the code?!

This is a Lerna respository with multiple npm packages!
Check out the packages/ directory :eyes:.

主要指标

概览
名称与所有者redfin/react-server
主编程语言JavaScript
编程语言JavaScript (语言数: 7)
平台
许可证Apache License 2.0
所有者活动
创建于2016-02-09 19:20:35
推送于2021-03-09 17:40:10
最后一次提交2020-11-09 11:47:53
发布数70
最新版本名称v1.0.0-alpha.2 (发布于 )
第一版名称v0.0.2 (发布于 )
用户参与
星数3.9k
关注者数60
派生数184
提交数2.1k
已启用问题?
问题数314
打开的问题数128
拉请求数588
打开的拉请求数38
关闭的拉请求数105
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?