The client-side process during which static HTML sent by the server is taken and turned into dynamic DOM that can react to client-side data changes.

This way, a certain part of the necessary JavaScript is executed on the server-side for pre-rendering an initial version of the application e.g. for search engines while another part of the necessary JavaScript is delivered to the clients and executed there, e.g. for providing visual effects or attaching event handlers. This allows users and search engines to check out an application even though it’s not fully functional yet while the client-side bundle is being loaded.