React is a great tool for building frontend applications. It has a very diverse eco-system with hundreds of great libraries for literally anything you might need. However it can be overwhelming to be forced to make so many choices.
React is also very flexible, you can write React applications in any way you like but that flexibility comes with a cost. Since there is no pre-defined architecture developers can to follow, it often leads to messy, uncosistent or over-complicated codebases.
This is an attempt to present the way of creating React applications using the best tools in the eco-system with a good project structure that scales very well. It is based on the experience of working with many different codebases, and this architecture turns out to be the most effective one.
The goal of this repo is to serve as a collection of good practices when developing React applications. It is supposed to showcase solving most of the real-world problems of an application in a practical way and help developers writing better applications.
- Project Configuration
- Project Structure
- Components And Styling
- API Layer
- State Management
- API Mock Server
- Error Handling
Feel free to explore the repo to get the most value out of it.