Skip to main content
RUIRenderer is the primary structured response API. It accepts the accumulated source string as children, validates it against a catalog, and renders only trusted registered components.

Source lifecycle

  1. Complete physical statements are parsed as characters arrive.
  2. Valid statements may form an inert provisional surface.
  3. Invalid lines or nodes are quarantined with bounded diagnostics.
  4. complete synthesizes and validates the trusted commit.
  5. Only the committed surface enables interactions and custom components.
Use streamStatus with streaming, complete, cancelled, or failed. isStreaming remains available as a simpler boolean, but streamStatus carries the full terminal state. retryKey resets compilation for a new attempt; replacing the source with a non-prefix value also resets it.

Host inputs and events

data, context, and draft are read-only host inputs. Events are frozen objects and can be observed through onAction, onNavigate, onRender, onError, or the combined onEvent. onStateChange exposes source, diagnostics, catalog, stream state, and the current snapshot for tools such as Devtools. For every prop, see the @rixx-ui/react API.