Declarative Partial Updates Experiments

thunderbong2 pts0 comments

Declarative Partial Updates experiments

declarative partial updates experiments

Experiments with the Declarative Partial Updates API and the Navigation API. As little JS as possible. Chrome 148+ behind chrome://flags/#enable-experimental-web-platform-features.

01. Basic marker placeholder + declarative replacement, zero JS.

02. Streaming fetch into elementstreamHTML() piping a chunked fetch into the DOM.

03. HTMX emulationTiny JS that turns data-target attributes into streamed partial updates.

04. Navigation API + DPUSPA routing via navigation.intercept(), content via streamHTML.

05. Islands architectureIndependent islands, each fetched in parallel via DPU.

06. Server-side renderedServer streams the whole document with out-of-order fills.

07. Streaming clockLong-lived response that re-flushes a every second. Zero JS.

08. Skeleton cardPlaceholder shapes that match the final layout — no layout shift on fill.

references

Chrome blog: Declarative Partial Updates — Barry Pollard's introduction to the API.

WICG/declarative-partial-updates — Specification repo with explainers and issues.

Patching explainer — / markers and .

Dynamic-markup explainer — The new streamHTMLUnsafe() / append / prepend / replace methods.

Chrome Status: Out of order streaming — DevTrial in 148 (behind flag), shipping target 150.

Chrome Status: Parse processing instructions in HTML — Supporting work that makes / parseable.

Chrome Status: setHTMLUnsafe and parseHTMLUnsafe — Chrome 124 foundation that the streaming methods extend.

WHATWG HTML PR #11818 — The actual spec change for out-of-order streaming.

WHATWG HTML issue #2142 — The original 2017 thread that led here.

Mozilla standards-positions #1369 — Currently "No signal".

WebKit standards-positions #628 — Currently "Support".

template-for polyfill

html-setters polyfill

Chrome docs: Navigation API

Jason Miller: Islands Architecture

photo-album-server.js — A larger out-of-order streaming demo from the same team.

chrome declarative partial updates streaming experiments

Related Articles