Note: This is a personal playground cloned from react-universally


React, Redux, Universal

A starter kit for universal react applications.

## About

This starter kit for personal use as a playground

NOTICE: Please read this important issue about the behaviour of this project when using react-async-component, which is by default bundled with it.

Features

  • 👀 react as the view.
  • 🔀 react-router v4 as the router.
  • 🚄 express server.
  • 🎭 jest as the test framework.
  • 💄 Combines prettier and Airbnb's ESlint configuration - performing code formatting on commit. Stop worrying about code style consistency.
  • 🖌 Very basic CSS support - it's up to you to extend it with CSS Modules etc.
  • ✂️ Code splitting - easily define code split points in your source using react-async-component.
  • 🌍 Server Side Rendering.
  • 😎 Progressive Web Application ready, with offline support, via a Service Worker.
  • 🐘 Long term browser caching of assets with automated cache invalidation.
  • 📦 All source is bundled using Webpack v2.
  • 🚀 Full ES2017+ support - use the exact same JS syntax across the entire project. No more folder context switching! We also only use syntax that is stage-3 or later in the TC39 process.
  • 🔧 Centralised application configuration with helpers to avoid boilerplate in your code. Also has support for environment specific configuration files.
  • 🔥 Extreme live development - hot reloading of ALL changes to client/server source, with auto development server restarts when your application configuration changes. All this with a high level of error tolerance and verbose logging to the console.
  • ⛑ SEO friendly - react-helmet provides control of the page title/meta/styles/scripts from within your components.
  • 🤖 Optimised Webpack builds via HappyPack and an auto generated Vendor DLL for smooth development experiences.
  • 🍃 Tree-shaking, courtesy of Webpack.
  • 👮 Security on the express server using helmet and hpp.
  • 🏜 Asset bundling support. e.g. images/fonts.
  • 🎛 Preconfigured to support development and optimised production builds.
  • ❤️ Preconfigured to deploy to now with a single command.

Getting started

git clone https://github.com/ctrlplusb/react-universally my-project
cd my-project
yarn
yarn run develop

Or, if you aren't using yarn:

git clone https://github.com/ctrlplusb/react-universally my-project
cd my-project
npm install
npm run develop

Now go make some changes to the Home component to see the tooling in action.

Docs