Creating scalable, universal and well tested JavaScript application for enterprise companies with many teams and products is a hard task. We at Immowelt Group took gathered all of our knowledge and aimed to fill this void. create-react-microservice
is a scaffold that will provide you with an mono-repository structure so it is easy as pie to share code with co-workers, best practices in regards to testing as well as server side rendering support. All of it while providing you the whole flexibility of changing stuff under the hood.
What's in the box?
- Universal by default using AirBnB's hypernova render microservice under the hood.
- Built with React, Redux, Reselect and Plow-JS.
- Comes with best-practices in regards on how to unit- and performance-test your universal application.
- 100% Statically typed via Flow from Facebook.
- Built in support for internationalization (i18n).
- No assumptions about your CSS setup, but with guides on how to setup each in minutes.
- Containerized via Docker.
- Highly flexible and performing architecture under the hood.
What about Next.js?
This scaffold is not aimed at "competing" against Next.js, quite the contrary we see Next.js as a valid addition to the scaffold! We even provide you with a guide on how to integrate Next.js into the scaffold structure within minutes! :-)
Why is this scaffold called create-react-microservice
/ What is a frontend-microservice?
At ImmoweltGroup we are currently re-structuring our plattform from a big monolithic application into small, composable services that take care of one specific UI part, the bigger picture will be composed at a higher level with a tool such as node-tailor. If you haven't heard of frontend microservices, we recommend you to read Tom Sรถderlund's great article Micro frontendsโa microservice approach to front-end web development. This scaffold is a result of the requirements and therefore called create-react-microservice
, nevertheless this scaffold can still be used for traditional web applications, e.g. in combination with Zeit's great next.js framework.
Quick Start
yarn global add create-react-microservice
create-react-microservice my-fancy-ui
cd my-fancy-ui
yarn run dev
That's it - A browser should automatically open up http://localhost:8080/ as soon as the application was compiled the first time.
Documentation
A detailed documentation including a test feature integration guide as well as a bunch of recipes to integrate other technologies/frameworks into the scaffold can be found over at https://immoweltgroup.gitbooks.io/create-react-microservice/ - Check it out! :-)
Contributing
See the CONTRIBUTING.md
file at the root of the repository.
Licensing
See the LICENSE
file at the root of the repository.