Progressive UI streaming

Skeletons and partial components render as the agent's structured output arrives.

Ask MilkyQ3 retention Ready
Build a Q3 churn breakdown I can share with the team.
Churn by seat band
At risk now
First content–
Layout shifts0
Complete–
Structured output, as it arrives

    Space is reserved from the schema: 3 KPIs, 4 bands, 4 rows. Values drop into place in whatever order they arrive.

    Try it: Watch the breakdown fill in while nothing moves. Then switch to No reservation and run it again: the same stream makes the layout jump.

    In the wild

    How one product ships this pattern. Click a screenshot to enlarge it.

    Hex notebook with a new chart cell showing a skeleton bar-chart placeholder labelled 'Loading chart...' while the prompt bar reads 'Creating chart...'
    Hex
    When the AI adds a chart, the cell and its config panel appear immediately as a skeleton, then fill in as the generated chart spec arrives.
    Source: Hex engineering blog (video) ↗

    When to use

    Any generative UI slower than a few hundred milliseconds.

    Seen in

    Streamed tool-call cards, partial table rendering, progressive artifact previews.

    For engineers

    Stream partial objects against a schema and reserve space by expected shape, not measured content.

    Build prompt

    A neutral, component-only prompt for a coding agent. Edit the stack block or anything else to fit your project, then copy it.

    Download this prompt as Markdown, or every prompt as JSON for an agent.

    Critique checklist for generative ui

    0 of 4 checked

    These questions apply to every pattern in this family. Ticks are saved in this browser.