Understanding architectural decisions when building React applications
Regardless of the specific needs of the application, there are some generally bad and good decisions we can make when building it.
Bad architectural decisions
Flat project structure
Imagine having a lot of components, all living in the same folder. The simplest thing to do is to place all the React components within the components folder, which is fine if our components count does not exceed 20 components. After that, it becomes difficult to find where a component should belong because they are all mixed.
Large, tightly coupled components
Having large and coupled components have a couple of downsides. They are difficult to test in isolation, they are difficult to reuse, and they may also have performance issues in some cases because the component would need to be re-rendered entirely instead of us re-rendering...