Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit

* added path alias for playground

* extracted some components and updated their code

* installed @types/node in root

* playground fix path alias

* revert path alias

* extracted Selector component

* extracted ValidatorSelector component

* extracted SubthemeSelector component

* extracted RawValidatorTest component

* extracted Editor component

* moved playground to a separate component

* fixed index file extension

* convert samples to TS

* fixed an import

* revert removing widget export

* added sample types to Selector

* memoize playground components

* updated DemoFrame component

* renamed form state variable to showForm

* convert ErrorBoundary to TS

* DANGEROUSLY converted playground to TS

* removed prop-types npm package

* group imports

Co-authored-by: Heath C <>

* add types tp validation.ts

* pass props to Editors more explicitly

Co-authored-by: Heath C <>

* remove a comma and sort props of Editors

* add rjsf prop types to some components

* improved Playground initial mount effect

* cleanup some of unused deps

* add formData as dep for onFormDataEdited

Co-authored-by: Heath C <>

* improved types and callbacks

* moved Editors before Playground

* Update packages/playground/src/components/Playground.tsx

Co-authored-by: Heath C <>

* remove @ts-ignore in component exports

* improve DemoFrame callbacks

* imrpoved EditorsProps types

* added Editor callback deps

* removed an unwanted callback dep

* destructure props and state in ErrorBoundary

* added deps to a callback

* improved types of handleSetLiveSettings

Co-authored-by: Heath C <>

* improved types of liveSettingsSchema

* replace space span tags with plain string

* Rebase to main

* - Update linting and formatting to use Typescript
- Fixed up linting error and added back the missing `head` prop in DemoFrame that was breaking styling

* playground fix path alias

* revert path alias

* convert samples to TS

* revert removing widget export

* Update packages/playground/src/components/Playground.tsx

Co-authored-by: Heath C <>

* - Fixed a few more types

* - Updated the ``

* - Remove duplicate prog. reset button


Co-authored-by: Heath C <>
Co-authored-by: Heath Chiavettone <>

Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Build Status Contributors Apache 2.0 License



A simple React component capable of using JSON Schema to declaratively build and customize web forms.
Explore the docs »

View Playground · Report Bug · Request Feature

playground animation

Supported Themes


Read our documentation, powered by Docusaurus.

Live Playground

A live playground is hosted on GitHub Pages.


Read our contributors' guide to get started.


Testing powered by BrowserStack