Zod schema, JSON Schema object, or OpenAPI document.
Subject to the same compile-time rejection of unrepresentable
Zod 4 types as the schema prop on <SchemaComponent> — see
RejectUnrepresentableZod.
OptionalschemaFor OpenAPI / JSON Schema documents: a $ref string like
"#/components/schemas/User". Named schemaRef (not ref) to
avoid the React / preact/compat reserved prop name. See
SchemaComponentProps.schemaRef.
OptionalioWhich side of every transform / pipe / codec to render. Mirrors
<SchemaComponent io>. Defaults to "output" — the inferred
shape consumers receive from the server. Switch to "input"
to render the INPUT side (omits readOnly properties for
JSON Schema inputs, picks the input half of a z.codec(...)).
Has no effect for plain JSON Schema or OpenAPI inputs without
codec/transform constructs.
OptionalvalueCurrent value to render. Typed against
InferSchemaValue<T, SchemaRef, Mode> so the prop tracks the
schema's inferred shape for the chosen io direction. Falls back
to unknown for runtime schemas where the value type cannot be
statically inferred.
OptionalfieldsPer-field meta overrides — nested object mirroring schema shape.
Typed against InferFields so a typed schema prop drives
autocomplete on the override map, matching <SchemaComponent>.
OptionalmetaMeta overrides applied to the root schema.
OptionaldescriptionConvenience: sets description on the root.
OptionalresolverTheme resolver. In a Server Component you pass this explicitly
since SchemaProvider (React context) is unavailable.
Falls back to the headless resolver if omitted.
OptionalwidgetsInstance-scoped widgets.
OptionalonCalled with each diagnostic emitted during schema processing.
OptionalstrictWhen true, any diagnostic becomes a thrown error.
OptionalidPrefix used for every input id/label htmlFor in this view subtree.
Defaults to a per-instance value from useId(); pass a deterministic
value when stable ids matter (e.g. snapshot tests).
Props accepted by SchemaView.
Mirrors
SchemaComponentPropsfor the read-only / RSC path — noonChange, novalidate, and the theme is supplied via theresolverprop because Server Components cannot read React context.