Nowadays, there are few competitors in the React-based server-side rendering market. We can divide them into the following categories:
- Drop-in dynamic solutions (Next.js, Electrode, After)
- Drop-in static solutions (Gatsby, React Static)
- Custom solutions
The main difference between first two approaches is the way the app is built and served.
A static solution makes a static HTML build (with all possible router pages), and then this build can be served by a static server such as Nginx, Apache, or any other. All HTML is pre-baked, as well as the initial state. This is very suitable for websites with incremental content updates that happen infrequently, for example, for a blog.