Choose your packages
A form needs three pieces: @texaryn/core, a schema adapter, and a framework
binding. Display documents need the core and a binding, without a schema adapter.
Choose a framework
Section titled “Choose a framework”Start in an application that already has the framework installed. For JSON
Schema forms, install @texaryn/core and @texaryn/schema-json, then add one
binding from this table.
| Framework | Add this binding | Supported peer version | Setup |
|---|---|---|---|
| React | @texaryn/react |
React 18.3 or 19 | Getting started |
| Angular | @texaryn/angular |
Angular 20 or newer | Angular guide |
| Vue | @texaryn/vue |
Vue 3.5 or newer | Vue guide |
| Svelte | @texaryn/svelte |
Svelte 5.20 or newer | Svelte guide |
| SolidJS | @texaryn/solid |
SolidJS 1.9 | SolidJS guide |
| Plain JavaScript | @texaryn/web-components |
No framework dependency | Web Components guide |
For example, in a Vue application:
pnpm add @texaryn/core @texaryn/schema-json @texaryn/vueThe bindings observe the same runtime contracts. Their component APIs and runtime lifetime rules follow their own frameworks; see each setup guide.
Choose a schema
Section titled “Choose a schema”- JSON Schema: use
@texaryn/schema-json. It supports Draft 4, Draft 7, 2019-09 and 2020-12. Check support and limits for your keywords and reference patterns. - TypeBox: pass its JSON Schema output to
@texaryn/schema-json. No separate Texaryn TypeBox package is needed. - Zod 4: use
@texaryn/schema-zodwithzodinstead of installing the JSON Schema adapter directly. Zod validates; JSON Schema conversion supplies the field projection. Conversion limits matter for refinements and transforms.
Choose a look
Section titled “Choose a look”Every binding includes default widgets and accepts a custom registry. React also has Bootstrap 5 and Material UI v9 widget packages. The styling guide covers their setup and styling the default React controls with your own CSS.
Published packages
Section titled “Published packages”Each badge links to the package’s current npm version. Packages version
independently: @texaryn/core, @texaryn/schema-json and @texaryn/react are
at 1.0. The other packages remain below 1.0 and may introduce breaking changes
in minor releases. See the roadmap for the
compatibility contract.
| Package | npm | Purpose |
|---|---|---|
@texaryn/core |
Headless form and display runtimes | |
@texaryn/schema-json |
JSON Schema evaluation, projection and validation | |
@texaryn/schema-zod |
Zod 4 validation with JSON Schema projection | |
@texaryn/react |
React hooks, form and display components | |
@texaryn/angular |
Angular signals and standalone components | |
@texaryn/vue |
Vue composables, form and display components | |
@texaryn/svelte |
Svelte readable stores and components | |
@texaryn/solid |
SolidJS subscriptions and components | |
@texaryn/web-components |
Custom element and DOM mounting functions | |
@texaryn/react-bootstrap |
Bootstrap 5 form widgets for React | |
@texaryn/react-mui |
Material UI v9 form widgets for React | |
@texaryn/collaboration-yjs |
Shared scalar field edits through Yjs |
The Yjs adapter covers shared scalar edits. The host supplies a Y.Doc and
provider; concurrent array ordering is outside its contract. See the
package README
for setup.