Animated Circular Progress Bar0
Font.Lokio
Back to BLOG

Hydration is Over: Getting to Know Resumability in the Latest Generation of Frontend Frameworks

wahyu agus arifin
Hydration is Over: Getting to Know Resumability in the Latest Generation of Frontend Frameworks

Hydration is Over: Meet Resumability, the Next Frontier of Frontend Frameworks

For the past decade, we have accepted a bitter truth in web development: The Hydration Tax. We built increasingly complex apps, only to watch our Time-to-Interactive (TTI) metrics suffer. But as we move through 2026, a new paradigm has officially challenged the status quo. Resumability is here to end the era of heavy bundles and usher in the age of truly instant-on web applications.

The Fundamental Flaw: What is the "Hydration Tax"?

To understand why Hydration is being phased out, we must look at what happens under the hood when we use frameworks like React, Vue, or Svelte in Server-Side Rendering (SSR) mode.

The Hydration process is an expensive three-step ritual:

  1. Download: The browser fetches all the JavaScript (JS) required for the page.
  2. Parse & Compile: The browser processes the downloaded scripts.
  3. Execution (Reconciliation): The framework re-executes the entire application logic on the client side to "attach" event listeners to the server-rendered HTML.

The issue is redundancy. The server has already computed the application's state and structure, yet it "discards" that knowledge, forcing the browser to re-calculate everything from scratch. On low-end devices or unstable connections, this leads to high Total Blocking Time (TBT)—the page looks ready, but it’s "frozen" and non-interactive.

Introducing Resumability: Execution Without Replay

Resumability—a concept pioneered by frameworks like Qwik—is the ability of an application to resume execution exactly where the server left off, without downloading or re-executing the JS code at startup.

The Technical Mechanics of Resumability

Unlike Hydration, which relies on eager execution, Resumability is built on three technical pillars:

1. State Serialization into HTML

In a resumable framework, all application metadata—from component states to event listener locations—is serialized directly into the HTML attributes.

If a button requires a click function, the HTML looks like this:

index.html
Loading...

The browser doesn't need to execute JS to know this button is interactive; the "wiring" is already present in the DOM.

2. Fine-Grained Lazy Loading (Atomic Code Splitting)

Code is broken down into tiny, "atomic" chunks. The logic for an onClick handler is separated from the component's render logic. That code is never downloaded by the browser unless the user actually clicks that specific button.

3. Global Event Delegation

Instead of registering thousands of individual event listeners during a "hydration phase," resumable frameworks use a single global listener at the document level. When an action occurs (e.g., a click), this listener intercepts it, reads the HTML attribute, fetches the tiny JS chunk needed, and executes it instantly.

Technical Comparison: Hydration vs. Resumability

FuturHydration (React/Next.js)Resumability (Qwik/Generasi Baru)
Boot-up TimeProportional to JS bundle size.Instan (Zero-effort).
Eksekusi JSRe-executes all components.Only executes code triggered by user.
Data TransferSends HTML + Large JS Bundles.Sends HTML + Serialized State.
Interactivity"Fake" until JS finishes loading.Interactive from the first millisecond.

The Reality of "Zero Bundle"

In theory, Resumability enables what is known as Zero-JS-by-default. Upon initial load, the amount of JavaScript sent to the browser is nearly 0kb (aside from a tiny ~1kb script for event management).

This is a massive leap for SEO and User Experience. Lighthouse and Core Web Vitals scores (specifically INP - Interaction to Next Paint) consistently hit 100 because the browser's main thread is no longer choked by heavy reconciliation processes.

Challenges and the Future

Does this mean React is obsolete? Not yet. Migrating to Resumability requires a shift in how developers write code—for instance, ensuring all data is serializable.

However, the trend is clear: Speed is no longer a feature; it is the standard. Resumability isn't just an optimization; it is a fundamental re-architecture of how the web should work. We are finally stopping the practice of treating the browser as a machine that must rebuild everything, and starting to treat it as a seamless extension of the server.