Your users might start seeing a blank page flicker.
And that blank page may take a few seconds to display any content.
This causes a bad experience for the user for their first visit.
Great, but why would you want to do that? Right?
When a user first arrives to your awesome website or application, it will serve the initial HTML, image assets, and CSS styles.
Your internet browser is really good at serving that data fast.
And this where things may get a bit time consuming for your browser.
So downloading, the file to the browser may take a bit of time, especially if you’re in a limited connection internet bandwidth.
Maybe a few animations, click events, etc.
This is where Node.js comes and saves the day.
Another benefit with server-side rendering is that your application or website is SEO friendly.
Since server-side rendering is only responsible to output the initial markup then is enough for Google crawlbots.
That means, you can take advantage of converting your server side rendered app into a single page application after the initial load.
This will let your users have a fast initial load to your application, and let them navigate through it in a native app like feel.
The biggest cost to this approach is time because of the amount of complexity that comes with bridging the server side with the client side.
This will require the engineer to make sure they’re making the back-end code to optimize the first to paint, and the TTI (time to interactive).
It also allows you to use your favorite view libraries and produce native like apps.
But it comes at a cost of time, and extra complexity.