Comparison
Client-side renderingvsServer-side rendering
Client-side rendering
you view source and there is nothing in the body but an empty div and a script tag.
The page ships as a shell and JavaScript builds the entire interface in the browser. It gives you cheap navigation after the first load and one deployable that is just static files. The costs land on the first visit and on anything without a fast CPU: nothing is visible until the bundle has downloaded, parsed and executed, and crawlers or link previews may see the empty shell.
Full entry →Server-side rendering
the HTML arrives with the content already in it, and the page is readable before any script runs.
Running the component code on the server for each request and sending finished HTML. It gets content on screen sooner and gives crawlers something to read, at the cost of a server that must render on every request and a time-to-first-byte that now includes your data fetching. The rendered HTML is inert until hydration, so 'visible' and 'usable' become two different moments you have to measure separately.
Full entry →