Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/redfin/react-server
:rocket: Blazing fast page load and seamless navigation.
https://github.com/redfin/react-server
isomorphic react react-server server ssr universal
Last synced: 2 days ago
JSON representation
:rocket: Blazing fast page load and seamless navigation.
- Host: GitHub
- URL: https://github.com/redfin/react-server
- Owner: redfin
- License: apache-2.0
- Created: 2016-02-09T19:20:35.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2021-03-09T17:40:10.000Z (almost 4 years ago)
- Last Synced: 2024-12-03T10:05:11.165Z (9 days ago)
- Topics: isomorphic, react, react-server, server, ssr, universal
- Language: JavaScript
- Homepage: https://react-server.io/
- Size: 4.58 MB
- Stars: 3,891
- Watchers: 62
- Forks: 184
- Open Issues: 166
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-react-components-all - react-server - React framework with server render for blazing fast page load and seamless transitions between pages in the browser. (Uncategorized / Uncategorized)
- awesome-react-components - react-server - React framework with server render for blazing fast page load. (Code Design / Isomorphic Apps)
- awesome-blazingly-fast - react-server - :rocket: Blazing fast page load and seamless navigation. (JavaScript)
- awesome-list - react-server - React framework with server render for blazing fast page load and seamless transitions between pages in the browser. (Code Design / Isomorphic Apps)
- awesome-for-beginners - React server - first-contribution)_ <br> React framework with server render for blazing fast page load and seamless transitions between pages in the browser. (JavaScript)
- awesome-react-components - react-server - React framework with server render for blazing fast page load. (Code Design / Isomorphic Apps)
- awesome-react-components - react-server - React framework with server render for blazing fast page load. (Code Design / Isomorphic Apps)
- awesome-universal-rendering - React Server
- awesome-react-components - react-server - React framework with server render for blazing fast page load. (Code Design / Isomorphic Apps)
- fucking-awesome-react-components - react-server - React framework with server render for blazing fast page load. (Code Design / Isomorphic Apps)
- fucking-awesome-for-beginners - React server - first-contribution)_ <br> React framework with server render for blazing fast page load and seamless transitions between pages in the browser. (JavaScript)
README
# React Server is now defunct
Consider [Next.js](https://nextjs.org/) instead.
## React Server
[![Build Status][build-badge-img]][build-url]
[![NPM version][npm-version-img]][npm-url]
[![NPM downloads per month][npm-downloads-img]][npm-url]
[![Chat on Slack][slack-img]][slack-url]
[![NPM license][npm-license-img]][npm-url]
[![Powered by Redfin][redfin-img]][redfin-url]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](packages/generator-react-server):```bash
# 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`](packages/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](https://www.facebook.com/notes/facebook-engineering/bigpipe-pipelining-web-pages-for-high-performance/389414033919/),
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](https://react-server.io/docs) and
the [`react-server`](packages/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](https://webpack.js.org/concepts).
**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](CONTRIBUTING.md) to get started.#### Where's all the code?!
This is a [Lerna](https://github.com/lerna/lerna) respository with multiple npm packages!
Check out the [`packages/`](packages/) directory :eyes:.[build-badge-img]: https://travis-ci.org/redfin/react-server.svg?branch=master
[build-url]: https://travis-ci.org/redfin/react-server
[npm-url]: https://npmjs.org/package/react-server
[redfin-url]: https://www.redfin.com
[redfin-img]: https://img.shields.io/badge/Powered%20By-Redfin-c82021.svg
[npm-version-img]: https://badge.fury.io/js/react-server.svg
[npm-license-img]: https://img.shields.io/npm/l/react-server.svg
[npm-downloads-img]: https://img.shields.io/npm/dm/react-server.svg
[slack-url]: https://slack.react-server.io/
[slack-img]: https://slack.react-server.io/badge.svg