Only the edges survive.
Still air transmits nothing — only the steep density boundaries of a rising thermal survive the knife edge. Sweep the pointer across the field to rotate that knife and re-select which boundaries show.
Read the docsns-ui / loud
A full-bleed ASCII hero built as a real schlieren rig — a rising thermal plume's refractive-index gradient is cut by a hard knife edge, so only the steep density boundaries survive as thin bright and dark bands while the uniform bulk air stays completely blank.
Use when Pick hero-ascii-schlieren when the hero should read as an instrument rather than a landscape — a mostly empty frame in which only density boundaries are drawn, and the pointer rotates a knife edge that re-selects which boundaries are visible. hero-ascii-terrain is the pick for a literal place with a horizon and parallax; hero-ascii-eclipse when the payoff is a single alignment event; background-ascii-caustics when you want an ambient full-field pattern that focuses toward the cursor rather than a sparse instrument read.
Install
npx shadcn add https://design.helpmarq.com /r/hero-ascii-schlieren.jsonStill air transmits nothing — only the steep density boundaries of a rising thermal survive the knife edge. Sweep the pointer across the field to rotate that knife and re-select which boundaries show.
Read the docs| Prop | Type | Default | Description |
|---|---|---|---|
| cellSize? | number | — | grid cell size in px |
| gain? | number | — | knife sensitivity — higher cuts more of the field into visible bands |
| children? | ReactNode | — | optional hero content, rendered over the field |
| className? | string | — | — |