jsonforms
Customizable JSON Schema-based forms with React, Angular and Vue support out of the box.
File Explorer
Download Latest Version (.zip)- devcontainer.json
- Dockerfile
- changelog.json
- bug_report.yml
- config.yml
- feature_request.yml
- ci.yaml
- publish.yaml
- project-info.prompttemplate
- extensions.json
- settings.json
- abstract-control.ts
- array-control.ts
- base.renderer.ts
- control.ts
- index.ts
- jsonforms-root.component.ts
- jsonforms.component.ts
- jsonforms.config.ts
- jsonforms.module.ts
- jsonforms.service.ts
- unknown.component.ts
- index.ts
- public_api.ts
- dummy.test.ts
- tsconfig.test.json
- ts-node.config.js
- .eslintrc.js
- .prettierrc.js
- build-package.js
- LICENSE
- ng-package.json
- package.json
- README.md
- tsconfig.cjs.json
- tsconfig.json
- app.component.ts
- app.module.ts
- index.html
- main.ts
- boolean.renderer.ts
- date.renderer.ts
- enum.renderer.ts
- index.ts
- number.renderer.ts
- range.renderer.ts
- text.renderer.ts
- textarea.renderer.ts
- toggle.renderer.ts
- array-layout.renderer.ts
- categorization-layout.renderer.ts
- group-layout.renderer.ts
- horizontal-layout.renderer.ts
- index.ts
- layout.renderer.ts
- vertical-layout.renderer.ts
- detail.ts
- index.ts
- master.ts
- index.ts
- label.renderer.ts
- object.renderer.ts
- table.renderer.ts
- util.ts
- date-format.ts
- dayjs-date-adapter.ts
- index.ts
- module.ts
- index.ts
- public_api.ts
- boolean.ts
- index.ts
- layout.ts
- number.ts
- range.ts
- text.ts
- util.ts
- array-layout.spec.ts
- boolean-control.spec.ts
- categorization-tab-layout.spec.ts
- date-control.spec.ts
- enum-control.spec.ts
- group-layout.spec.ts
- horizontal-layout.spec.ts
- label-renderer.spec.ts
- master-detail.spec.ts
- middleware.spec.ts
- number-control.spec.ts
- object-control.spec.ts
- one-of-enum-control.spec.ts
- range-control.spec.ts
- table-control.spec.ts
- test.ts
- text-area.spec.ts
- text-control.spec.ts
- toggle-control.spec.ts
- util.ts
- vertical-layout.spec.ts
- .eslintrc.js
- .prettierrc.js
- angular.json
- karma.conf.js
- LICENSE
- ng-package.json
- package.json
- README.md
- tsconfig.example.json
- tsconfig.json
- tsconfig.spec.json
- actions.ts
- index.ts
- Generate.ts
- index.ts
- schema.ts
- uischema.ts
- arrayTranslations.ts
- combinatorTranslations.ts
- i18nUtil.ts
- index.ts
- selectors.ts
- cell.ts
- combinators.ts
- index.ts
- renderer.ts
- util.ts
- draft4.ts
- index.ts
- jsonSchema.ts
- jsonSchema4.ts
- jsonSchema7.ts
- uischema.ts
- cells.ts
- config.ts
- core.ts
- default-data.ts
- i18n.ts
- index.ts
- middleware.ts
- reducers.ts
- renderers.ts
- uischemas.ts
- i18nTypes.ts
- index.ts
- jsonFormsCore.ts
- store.ts
- type.ts
- index.ts
- testers.ts
- defaultDateFormat.ts
- errors.ts
- Formatted.ts
- helpers.ts
- ids.ts
- index.ts
- label.ts
- path.ts
- resolvers.ts
- runtime.ts
- schema.ts
- setData.ts
- uischema.ts
- util.ts
- validator.ts
- configDefault.ts
- index.ts
- actions.test.ts
- schema.test.ts
- uischema.test.ts
- i18nUtil.test.ts
- array.test.ts
- cell.test.ts
- combinators.test.ts
- renderer.test.ts
- core.test.ts
- uischemas.test.ts
- derivetype.test.ts
- ids.test.ts
- label.test.ts
- path.test.ts
- resolvers.test.ts
- runtime.test.ts
- setData.test.ts
- testers.test.ts
- ts-node.config.js
- .eslintrc.js
- .nycrc
- .prettierrc.js
- LICENSE
- package.json
- README.md
- rollup.config.js
- tsconfig.json
- drive.png
- folder.png
- page.png
- 1884.ts
- 1948.ts
- additional-errors.ts
- additional-properties.ts
- allOf.ts
- anyOf-oneOf-allOf-resolve.ts
- anyOf.ts
- arrays-with-custom-element-label.ts
- arrays-with-defaults.ts
- arrays-with-detail-and-rule.ts
- arrays-with-detail.ts
- arrays-with-sorting.ts
- arrays-with-translated-custom-element-label.ts
- arrays.ts
- arraysI18n.ts
- categorization-stepper-nav-buttons.ts
- categorization-stepper.ts
- categorization.ts
- conditional-schema-compositions.ts
- config.ts
- control-options.ts
- dates.ts
- default.ts
- enum-multi-with-label-and-desc.ts
- enum-multi.ts
- enum.ts
- enumI18n.ts
- enumInArray.ts
- generate-dynamic.ts
- generate.ts
- generateUI.ts
- huge.ts
- i18n.ts
- if_then_else.ts
- json-editor.ts
- jsonschema.ts
- layout.ts
- list-with-detail-primitives.ts
- list-with-detail-registered.ts
- list-with-detail.ts
- login.ts
- mixed-object.ts
- mixed.ts
- nestedArrays.ts
- nestedCategorization.ts
- numbers.ts
- object.ts
- onChange.ts
- oneOf-recursive.ts
- oneOf.ts
- oneOfArray.ts
- person.ts
- prepend-append-slots.ts
- radioGroup.ts
- readonly.ts
- rule.ts
- ruleInheritance.ts
- scope.ts
- special-property-names.ts
- string.ts
- stringArray.ts
- text.ts
- validation-nested-same-name.ts
- example.ts
- index.ts
- register.ts
- .eslintrc.js
- .prettierrc.js
- package.json
- README.md
- rollup.config.js
- tsconfig.json
- index.html
- package.json
- prepare-examples-app.js
- README.md
- favicon.ico
- index.html
- manifest.json
- App.css
- App.tsx
- index.tsx
- logo.svg
- .eslintrc.js
- .prettierrc.js
- package.json
- index.bundled.html
- index.html
- index.tsx
- index.ts
- ListWithDetailMasterItem.tsx
- MaterialLabelRenderer.tsx
- MaterialListWithDetailRenderer.tsx
- unwrapped.ts
- CustomizableCells.ts
- index.ts
- MaterialBooleanCell.tsx
- MaterialBooleanToggleCell.tsx
- MaterialDateCell.tsx
- MaterialEnumCell.tsx
- MaterialIntegerCell.tsx
- MaterialNumberCell.tsx
- MaterialNumberFormatCell.tsx
- MaterialOneOfEnumCell.tsx
- MaterialTextCell.tsx
- MaterialTimeCell.tsx
- CombinatorProperties.tsx
- DeleteDialog.tsx
- index.ts
- MaterialAllOfRenderer.tsx
- MaterialAnyOfRenderer.tsx
- MaterialArrayControlRenderer.tsx
- MaterialEnumArrayRenderer.tsx
- MaterialObjectRenderer.tsx
- MaterialOneOfRenderer.tsx
- MaterialTableControl.tsx
- NoBorderTableCell.tsx
- TableToolbar.tsx
- TabSwitchConfirmDialog.tsx
- unwrapped.ts
- ValidationIcon.tsx
- index.ts
- MaterialAnyOfStringOrEnumControl.tsx
- MaterialBooleanControl.tsx
- MaterialBooleanToggleControl.tsx
- MaterialDateControl.tsx
- MaterialDateTimeControl.tsx
- MaterialEnumControl.tsx
- MaterialInputControl.tsx
- MaterialIntegerControl.tsx
- MaterialNativeControl.tsx
- MaterialNumberControl.tsx
- MaterialOneOfEnumControl.tsx
- MaterialOneOfRadioGroupControl.tsx
- MaterialRadioGroup.tsx
- MaterialRadioGroupControl.tsx
- MaterialSliderControl.tsx
- MaterialTextControl.tsx
- MaterialTimeControl.tsx
- unwrapped.ts
- ArrayToolbar.tsx
- ExpandPanelRenderer.tsx
- index.ts
- MaterialArrayLayout.tsx
- MaterialArrayLayoutRenderer.tsx
- MaterialCategorizationLayout.tsx
- MaterialCategorizationStepperLayout.tsx
- MaterialGroupLayout.tsx
- MaterialHorizontalLayout.tsx
- MaterialVerticalLayout.tsx
- unwrapped.ts
- index.ts
- MuiAutocomplete.tsx
- MuiCheckbox.tsx
- MuiInputInteger.tsx
- MuiInputNumber.tsx
- MuiInputNumberFormat.tsx
- MuiInputText.tsx
- MuiInputTime.tsx
- MuiSelect.tsx
- MuiToggle.tsx
- datejs.tsx
- debounce.ts
- focus.ts
- i18nDefaults.ts
- index.ts
- layout.tsx
- theme.ts
- index.ts
- MaterialAllOfRenderer.test.tsx
- MaterialAnyOfRenderer.test.tsx
- MaterialAnyOfStringOrEnumControl.test.tsx
- MaterialArrayControl.test.tsx
- MaterialArrayLayout.test.tsx
- MaterialBooleanCell.test.tsx
- MaterialBooleanToggleCell.test.tsx
- MaterialBooleanToggleControl.test.tsx
- MaterialCategorizationLayout.test.tsx
- MaterialCategorizationStepperLayout.test.tsx
- MaterialDateCell.test.tsx
- MaterialDateControl.test.tsx
- MaterialDateTimeControl.test.tsx
- MaterialEnumArrayRenderer.test.tsx
- MaterialEnumCell.test.tsx
- MaterialEnumControl.test.tsx
- MaterialGroupLayout.test.tsx
- MaterialInputControl.test.tsx
- MaterialIntegerCell.test.tsx
- MaterialLabelRenderer.test.tsx
- MaterialLayouts.test.tsx
- MaterialListWithDetailRenderer.test.tsx
- MaterialNativeControl.test.tsx
- MaterialNumberCell.test.tsx
- MaterialObjectControl.test.tsx
- MaterialOneOfEnumCell.test.tsx
- MaterialOneOfRadioGroupControl.test.tsx
- MaterialOneOfRenderer.test.tsx
- MaterialRadioGroupControl.test.tsx
- MaterialSliderControl.test.tsx
- MaterialTableControl.test.tsx
- MaterialTextCell.test.tsx
- MaterialTextControl.test.tsx
- MaterialTimeCell.test.tsx
- MaterialTimeControl.test.tsx
- tooltipChecker.tsx
- util.ts
- datejs.test.ts
- webpack.dev.js
- .eslintrc.js
- .prettierrc.js
- LICENSE
- package.json
- README.md
- rollup.config.js
- rollup.example.config.js
- tsconfig.json
- tsconfig.test.json
- react.js
- index.ts
- JsonFormsReduxContext.tsx
- Control.ts
- DispatchCell.tsx
- index.ts
- JsonForms.tsx
- JsonFormsContext.tsx
- Renderer.tsx
- UnknownRenderer.tsx
- JsonForms.test.tsx
- JsonFormsContext.test.tsx
- .eslintrc.js
- .prettierrc.js
- LICENSE
- package.json
- README.md
- rollup.config.js
- tsconfig.json
- tsconfig.redux.json
- tsconfig.test.json
- example.css
- example.dark.css
- index.bundled.html
- index.html
- index.tsx
- theme.switcher.ts
- index.ts
- BooleanCell.tsx
- CustomizableCells.ts
- DateCell.tsx
- DateTimeCell.tsx
- EnumCell.tsx
- index.ts
- IntegerCell.tsx
- NumberCell.tsx
- NumberFormatCell.tsx
- OneOfEnumCell.tsx
- SliderCell.tsx
- TextAreaCell.tsx
- TextCell.tsx
- TimeCell.tsx
- ArrayControlRenderer.tsx
- index.ts
- CategorizationList.tsx
- CategorizationRenderer.tsx
- index.ts
- SingleCategory.tsx
- tester.ts
- index.ts
- LabelRenderer.tsx
- TableArrayControl.tsx
- index.ts
- InputControl.tsx
- OneOfRadioGroupControl.tsx
- RadioGroup.tsx
- RadioGroupControl.tsx
- GroupLayout.tsx
- HorizontalLayout.tsx
- index.ts
- JsonFormsLayout.tsx
- util.tsx
- VerticalLayout.tsx
- index.ts
- styling.ts
- index.ts
- styleContext.ts
- styles.ts
- i18nDefaults.ts
- index.ts
- props.tsx
- index.ts
- renderers.ts
- ArrayControl.test.tsx
- BooleanCell.test.tsx
- CategorizationRenderer.test.tsx
- DateCell.test.tsx
- DateTimeCell.test.tsx
- EnumCell.test.tsx
- GroupLayout.test.tsx
- HorizontalLayout.test.tsx
- InputControl.test.tsx
- IntegerCell.test.tsx
- LabelControl.test.tsx
- NumberCell.test.tsx
- OneOfEnumCell.test.tsx
- RadioGroupControl.test.tsx
- SliderCell.test.tsx
- TableArrayControl.test.tsx
- TextAreaCell.test.tsx
- TextCell.test.tsx
- TimeCell.test.tsx
- VerticalLayout.test.tsx
- styling.registry.test.ts
- util.ts
- webpack.dev.js
- .eslintrc.js
- .nycrc
- .prettierrc.js
- LICENSE
- package.json
- README.md
- rollup.config.js
- rollup.example.config.js
- Styles.md
- tsconfig.json
- tsconfig.test.json
- App.vue
- ControlRenderer.vue
- index.ts
- LayoutRenderer.vue
- serve.ts
- DispatchCell.vue
- DispatchRenderer.vue
- index.ts
- JsonForms.vue
- UnknownRenderer.vue
- index.ts
- jsonFormsCompositions.ts
- types.ts
- JsonForms.spec.ts
- testHelper.ts
- .eslintrc.js
- .prettierrc.js
- babel.config.js
- jest.config.js
- LICENSE
- package.json
- README.md
- rollup.config.js
- shims-vue.d.ts
- tsconfig.json
- jsonforms.ts
- App.vue
- serve.ts
- index.bundled.html
- ArrayListElement.vue
- ArrayListRenderer.vue
- index.ts
- CombinatorProperties.vue
- EnumArrayRenderer.vue
- index.ts
- ObjectRenderer.vue
- OneOfRenderer.vue
- BooleanControlRenderer.vue
- ControlWrapper.vue
- DateControlRenderer.vue
- DateTimeControlRenderer.vue
- EnumControlRenderer.vue
- EnumOneOfControlRenderer.vue
- index.ts
- IntegerControlRenderer.vue
- MultiStringControlRenderer.vue
- NumberControlRenderer.vue
- StringControlRenderer.vue
- TimeControlRenderer.vue
- index.ts
- LabelRenderer.vue
- CategorizationRenderer.vue
- CategorizationStepperRenderer.vue
- GroupRenderer.vue
- index.ts
- LayoutRenderer.vue
- defaultStyles.ts
- index.ts
- styles.ts
- util.ts
- composition.ts
- index.ts
- options.ts
- index.ts
- renderers.ts
- ArrayListRenderer.spec.ts
- EnumArrayRenderer.spec.ts
- ObjectRenderer.spec.ts
- OneOfRenderer.spec.ts
- BooleanControlRenderer.spec.ts
- DateControlRenderer.spec.ts
- DateTimeControlRenderer.spec.ts
- EnumControlRenderer.spec.ts
- EnumOneOfControlRenderer.spec.ts
- IntegerControlRenderer.spec.ts
- MultiStringControlRenderer.spec.ts
- NumberControlRenderer.spec.ts
- StringControlRenderer.spec.ts
- TimeControlRenderer.spec.ts
- JsonForms.spec.ts
- LabelRenderer.spec.ts
- CategorizationRenderer.spec.ts
- CategorizationStepperRenderer.spec.ts
- GroupRenderer.spec.ts
- LayoutRenderer.spec.ts
- index.ts
- TestComponent.vue
- util.ts
- setup.ts
- .eslintrc.js
- .prettierrc.js
- babel.config.js
- LICENSE
- package.json
- README.md
- rollup.config.js
- rollup.example.config.js
- shims-vue.d.ts
- tsconfig.json
- vanilla.css
- JsonFormsLogo.vue
- logo.png
- logo.svg
- VuetifyLogo.vue
- ControlWrapper.vue
- ExampleAppBar.vue
- ExampleDrawer.vue
- ExampleForm.vue
- ExampleSettings.vue
- MonacoEditor.vue
- ThemeChanger.vue
- rule.json
- schema.json
- uischema.json
- index.ts
- jsonSchemaValidation.ts
- monaco.ts
- index.ts
- fa.ts
- icons.ts
- mdi.ts
- vuetify.ts
- DisplayNameWithIconRenderer.vue
- index.ts
- PasswordStrengthRenderer.vue
- StringWithCopyRenderer.vue
- TemperatureRenderer.vue
- UsernameCheckerRenderer.vue
- index.ts
- dynamicDefaults.ts
- index.ts
- keywords.ts
- transform.ts
- ExampleView.vue
- HomeView.vue
- App.vue
- env.d.ts
- main.ts
- index.ts
- LabelRenderer.entry.ts
- LabelRenderer.vue
- ListWithDetailRenderer.entry.ts
- ListWithDetailRenderer.vue
- index.ts
- AdditionalProperties.vue
- CombinatorProperties.vue
- index.ts
- AllOfRenderer.entry.ts
- AllOfRenderer.vue
- AnyOfRenderer.entry.ts
- AnyOfRenderer.vue
- ArrayControlRenderer.entry.ts
- ArrayControlRenderer.vue
- EnumArrayRenderer.entry.ts
- EnumArrayRenderer.vue
- index.ts
- MixedRenderer.entry.ts
- MixedRenderer.vue
- ObjectRenderer.entry.ts
- ObjectRenderer.vue
- OneOfRenderer.entry.ts
- OneOfRenderer.vue
- OneOfTabRenderer.entry.ts
- OneOfTabRenderer.vue
- DefaultControlWrapper.vue
- index.ts
- ValidationBadge.vue
- ValidationIcon.vue
- DisabledIconFocus.ts
- index.ts
- AnyOfStringOrEnumControlRenderer.entry.ts
- AnyOfStringOrEnumControlRenderer.vue
- BooleanControlRenderer.entry.ts
- BooleanControlRenderer.vue
- BooleanToggleControlRenderer.entry.ts
- BooleanToggleControlRenderer.vue
- ControlWrapper.vue
- DateControlRenderer.entry.ts
- DateControlRenderer.vue
- DateTimeControlRenderer.entry.ts
- DateTimeControlRenderer.vue
- EnumControlRenderer.entry.ts
- EnumControlRenderer.vue
- index.ts
- IntegerControlRenderer.entry.ts
- IntegerControlRenderer.vue
- MultiStringControlRenderer.entry.ts
- MultiStringControlRenderer.vue
- NumberControlRenderer.entry.ts
- NumberControlRenderer.vue
- OneOfEnumControlRenderer.entry.ts
- OneOfEnumControlRenderer.vue
- OneOfRadioGroupControlRenderer.entry.ts
- OneOfRadioGroupControlRenderer.vue
- PasswordControlRenderer.entry.ts
- PasswordControlRenderer.vue
- RadioGroupControlRenderer.entry.ts
- RadioGroupControlRenderer.vue
- SliderControlRenderer.entry.ts
- SliderControlRenderer.vue
- StringControlRenderer.entry.ts
- StringControlRenderer.vue
- StringMaskControlRenderer.entry.ts
- StringMaskControlRenderer.vue
- TimeControlRenderer.entry.ts
- TimeControlRenderer.vue
- AutocompleteEnumControlRenderer.entry.ts
- AutocompleteEnumControlRenderer.vue
- AutocompleteOneOfEnumControlRenderer.entry.ts
- AutocompleteOneOfEnumControlRenderer.vue
- index.ts
- additionalPropertiesTranslations.ts
- i18nUtil.ts
- index.ts
- fa.ts
- icons.ts
- index.ts
- mdi.ts
- ArrayLayoutRenderer.entry.ts
- ArrayLayoutRenderer.vue
- CategorizationRenderer.entry.ts
- CategorizationRenderer.vue
- CategorizationStepperRenderer.entry.ts
- CategorizationStepperRenderer.vue
- GroupRenderer.entry.ts
- GroupRenderer.vue
- HorizontalLayoutRenderer.entry.ts
- HorizontalLayoutRenderer.vue
- index.ts
- VerticalLayoutRenderer.entry.ts
- VerticalLayoutRenderer.vue
- defaultStyles.ts
- index.ts
- styles.ts
- util.ts
- composition.ts
- datejs.ts
- index.ts
- inject.ts
- options.ts
- validator.ts
- index.ts
- renderers.ts
- LabelRenderer.spec.ts.snap
- ListWithDetailRenderer.spec.ts.snap
- AdditionalPropertiesAjv.spec.ts
- AdditionalPropertiesRef.spec.ts
- LabelRenderer.spec.ts
- ListWithDetailRenderer.spec.ts
- ArrayControlRenderer.spec.ts.snap
- OneOfRenderer.spec.ts.snap
- ArrayControlRenderer.spec.ts
- OneOfRenderer.spec.ts
- BooleanControlRenderer.spec.ts.snap
- DateControlRenderer.spec.ts.snap
- DateTimeControlRenderer.spec.ts.snap
- EnumControlRenderer.spec.ts.snap
- IntegerControlRenderer.spec.ts.snap
- MultiStringControlRenderer.spec.ts.snap
- NumberControlRenderer.spec.ts.snap
- OneOfEnumControlRenderer.spec.ts.snap
- StringControlRenderer.spec.ts.snap
- TimeControlRenderer.spec.ts.snap
- BooleanControlRenderer.spec.ts
- DateControlRenderer.spec.ts
- DateTimeControlRenderer.spec.ts
- EnumControlRenderer.spec.ts
- IntegerControlRenderer.spec.ts
- MultiStringControlRenderer.spec.ts
- NumberControlRenderer.spec.ts
- OneOfEnumControlRenderer.spec.ts
- StringControlRenderer.spec.ts
- TimeControlRenderer.spec.ts
- ArrayLayoutRenderer.spec.ts.snap
- ArrayLayoutRenderer.spec.ts
- CategorizationStepperRenderer.spec.ts
- composition.spec.ts
- index.ts
- TestComponent.vue
- util.ts
- index.ts
- setup.ts
- .eslintrc.cjs
- .prettierrc.cjs
- index.html
- LICENSE
- package.json
- README.md
- tsconfig.example.json
- tsconfig.json
- tsconfig.lib.json
- tsconfig.node.json
- tsconfig.typedoc.json
- tsconfig.vitest.json
- vite.config.ts
- vite.example.config.ts
- vitest.config.ts
- webpack.base.js
- webpack.dev.base.js
- .gitignore
- .npmignore
- .npmrc
- .nvmrc
- .prettierignore
- .prettierrc.js
- add-file-headers.sh
- CLAUDE.md
- CONTRIBUTING.md
- lerna.json
- LICENSE
- MIGRATION.md
- package.json
- pnpm-lock.yaml
- pnpm-workspace.yaml
- README.md
- ROADMAP.md
- tsconfig.base.json
# Installation Guide
1. Get the code
git clone https://github.com/eclipsesource/jsonforms
Downloads the entire project code from GitHub to your computer.
cd jsonforms
Moves into the project folder you just downloaded.
2. Node.js
Easy RecommendedPrerequisites
npm install
Downloads and installs the libraries listed in package.json.
npm start
Starts the development/run server.
After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.
// repository documentation
Was this content helpful?
(0 ratings)
