A starter kit for universal react applications.
This starter kit contains all the build tooling and configuration you need to kick off your next universal React project, whilst containing a minimal "project" set up allowing you to make your own architecture decisions (Redux/MobX etc).
NOTICE: Please read this important issue about the behaviour of this project when using
react-async-component
, which is by default bundled with it.
react
as the view.react-router
v4 as the router.express
server.jest
as the test framework.prettier
and Airbnb's ESlint configuration - performing code formatting on commit. Stop worrying about code style consistency.react-async-component
.react-helmet
provides control of the page title/meta/styles/scripts from within your components.express
server using helmet
and hpp
.now
with a single command.Redux/MobX, data persistence, modern styling frameworks and all the other bells and whistles have been explicitly excluded from this starter kit. It's up to you to decide what technologies you would like to add to your own implementation based upon your own needs.
However, we now include a set of "feature branches", each implementing a technology on top of the clean master branch. This provides you with an example on how to integrate said technologies, or use the branches to merge in a configuration that meets your requirements. See the
Feature Branches
documentation for more.
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.
You can see who is using it and how in the comments here. Feel free to add to that telling us how you are using it, we'd love to hear from you.
Thanks goes to these wonderful people (emoji key):
Andrรฉs Calabrese ๐ป |
Andrey Luiz ๐ป |
Alin Porumb ๐ป |
Benjamin Kniffler ๐ป |
Birkir Rafn Guรฐjรณnsson ๐ฌ ๐ ๐ป ๐ |
Carson Perrotti ๐ฌ ๐ป ๐ ๐ |
Christian Glombek ๐ ๐ป |
---|---|---|---|---|---|---|
Christoph Werner ๐ฌ ๐ ๐ป ๐ |
David Edmondson ๐ป |
Dion Dirza ๐ฌ ๐ ๐ป ๐ ๐ |
Evgeny Boxer ๐ ๐ป |
Joe Kohlmann ๐ ๐ป |
Lucian Lature ๐ ๐ป ๐ |
Mark Shlick ๐ป |
Ryan Lindskog ๐ป |
Steven Enten ๐ฌ ๐ ๐ป ๐ |
Sean Matheson ๐ฌ ๐ ๐ป ๐ ๐ก ๐ โ ๏ธ ๐ง |
Steven Truesdell ๐ฌ ๐ ๐ป ๐ โ ๏ธ |
Thomas Leitgeb ๐ ๐ป |
Tyler Nieman ๐ป |
This project follows the all-contributors specification. Contributions of any kind welcome!