You might not need Redux, how to organize and scale large React apps, and how to build yourself a Redux
A little bit ago an article titled Thins nobody will tell you about React.js was published by Gianluca Guarini. This is a response made by Dan Abramov
This article is a bit older (7-8 months) and has probably been in this newsletter before, but the idea and concepts are worth revisiting, there are a lot of different reason to use Redux in your apps, and perhaps a lot of reason not to use it.
One of the best features of React is how it gets out of your way and is anything but descriptive when it comes to file structure. Therefore you’ll find a lot of questions on StackOverflow and similar asking how to structure applications. This is a very opinionated topic, and there’s no one right way. In this article, Jack Franklin talks us through the decisions he makes when building React applications: picking tools, structuring files, and breaking components up into smaller pieces.
The popular way of building a server-side API is to use a library like Express or Restify. These libraries make creating RESTful routes easy. The problem with these libraries is that we will find ourselves writing a TON of REPEATING CODE. We will also need to write code for authorization and other middleware logic.
To escape this dilemma, we can use a framework like Loopback or Feathersjs to help us generate an API.
Personally, I love build-your-own-x tutorials. They really help me understand abstractions and the tools I use. This is a great write-up by Justin Deal on building your own Redux.
Freactal is a composable state management library for React. The library grew from the idea that state should be just as flexible as your React code; the state containers you build with freactal are just components, and you can compose them however you'd like. In this way, it attempts to address the often exponential relationship between application size and complexity in growing projects.
A fast, versatile virtual-render list component for React.
Prepack is a tool that optimizes JavaScript source code: Computations that can be done at compile-time instead of run-time get eliminated. Prepack replaces the global code of a JavaScript bundle with equivalent code that is a simple sequence of assignments. This gets rid of most intermediate computations and object allocations.