vjsf
vjsf / json-layout form schemas
Overview
A vjsf form is driven by a JSON Schema annotated with the json-layout layout keyword, rendered by @koumoul/vjsf. The schema does two independent jobs: validation/typing (standard JSON Schema keywords) and form rendering (everything under layout, plus oneOfLayout and x-i18n-*).
Version naming: "vjsf 3+" and "vjsf 4" share the same vocabulary — v4 is the Vuetify 4 port of v3, no schema-level breaking change. The current lib is 4.5.x. Anything written here applies to both.
Not covered here (see the consumer skills): the df:vjsf meta and df-build-types pipeline of applications (data-fair-app), the datasetMode create/update pattern and processing context variables (data-fair-processing), the portals compiled mode (x-vjsf, --vjsf-dir).
When to use
- Writing or editing any schema rendered by vjsf: app
src/config/schema.json, pluginprocessing-config-schema.json, catalogtypes/*/schema.json|ts, portalsapi/types/*/schema.*. - Migrating a schema that still contains vjsf 2
x-*keywords. - Debugging a form that renders wrong with no error message.
Not for: Vue component work on the form renderer itself (that is the vuetify-jsonschema-form repo), or app runtime code reading the config.