JSON Schema to Form
Turn a JSON Schema into a live HTML form with validation and a JSON result.
Generated form
Build a form from the schema on the left.
Filled result (JSON)
Supported keywords: type, properties, items, required, enum, title, description, default, minimum, maximum, minLength, maxLength, pattern. References and combinators are reported as unsupported.
How to use it
- Paste a JSON Schema whose root is an object with a properties map.
- Click Build form. Each property becomes a labelled input, select or checkbox.
- Fill the form. Validation runs as you type, and problems appear under the field they belong to.
- Read the JSON result on the right, which reflects only the fields you filled.
- Copy the JSON once the status line says all fields are valid.
Common use cases
- Prototyping an internal tool - turn the schema you already have into a form you can click through before building the real interface.
- Checking a schema against reality - if a field is awkward to fill, the layout usually reveals that the schema needs adjusting.
- Producing sample payloads - fill the form once and copy JSON that matches the schema types.
- Onboarding a support team - a form derived from the schema keeps the required fields obvious.
- Teaching schema keywords - enum becomes a select, minimum and maximum become range checks, and pattern becomes a regex check.
Why it stays private
The schema and everything you type into the form stay in your browser. Nothing is uploaded, so internal schemas and the data you enter into them never leave your device.
FAQ
Q: Which keywords are supported? A: type, properties, items, required, enum, title, description, default, minimum, maximum, minLength, maxLength and pattern. Anything else is listed as unsupported when the form is built, so you can see what was skipped.
Q: Why do my $ref definitions not work? A: References are not resolved. A schema that depends on $ref, $defs or definitions is reported as unsupported, and those parts are skipped rather than turned into fields you would have to guess at.
Q: Are optional fields included in the JSON output? A: Only when you fill them. An untouched optional field stays out of the result, while a required one is flagged until you fill it.
Q: Can I nest objects and arrays? A: Yes. Objects open a nested block, and arrays give you an Add item button plus a Remove button per row, with both scalar and object item types supported.
Q: Does this validate against the full JSON Schema specification? A: No. It covers the keyword subset listed above and is meant for quick form building, not for checking a document against Draft 2020-12. Use a dedicated validator for production validation.
Your data stays on this device
JSON Schema to Form runs 100% locally. Everything you paste or drop is processed by your own browser and never transmitted. Nothing is stored on our servers — close the tab and it is gone.
Nothing you type is sent to a server, logged, or used for analytics. The page works even with your network disconnected after first load.