/create-react-microservice

🚀 Create highly scalable and universal React microservices/applications within seconds.

Primary LanguageJavaScriptMIT LicenseMIT

create-react-microservice

Powered by Immowelt Build Status Dependency Status devDependency Status Docs on gitbook.io semantic-release License

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.