{"_id":"@brainfish-ai/react-json-schema-form-builder","_rev":"4-01b6cac489346d0fbe40932fcba907bf","name":"@brainfish-ai/react-json-schema-form-builder","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"@brainfish-ai/react-json-schema-form-builder","version":"0.0.1","keywords":["react","form","json-schema","visual"],"author":{"url":"https://github.com/nathanalam","name":"Nathan Alam","email":"nathanalam99@gmail.com"},"license":"Apache-2.0","_id":"@brainfish-ai/react-json-schema-form-builder@0.0.1","maintainers":[{"name":"ajainvivek","email":"ajainvivek07@gmail.com"},{"name":"johnfumaster","email":"johnfumaster@gmail.com"}],"homepage":"https://github.com/ginkgobioworks/react-json-schema-form-builder#readme","bugs":{"url":"https://github.com/ginkgobioworks/react-json-schema-form-builder/issues","email":"devs@ginkgobioworks.com"},"dist":{"shasum":"5418e8ccea7db662b2211d3d00665bb1c02fd4c1","tarball":"https://registry.npmjs.org/@brainfish-ai/react-json-schema-form-builder/-/react-json-schema-form-builder-0.0.1.tgz","fileCount":8,"integrity":"sha512-gAIFjq9fb8gG6lQ5+APMLiMFYGPi8Pw9+jC31XoUtvsHNXPo37ZJDfToP1YiDGchFcoEsKaGYEZWl8V95JpBbw==","signatures":[{"sig":"MEYCIQC3mEYQmJZG9JP3fhRWlXRChxxw45koJ2sp2bN9310vJwIhAPLCkQ1qjIFjf+hRX6F0n2vcZU5t0H7UucIM9ISJf9Vw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":378092},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","source":"src/index.ts","engines":{"node":">=16"},"gitHead":"96495ce91d26038cfd7b35be0f8d3f40175ad57f","scripts":{"test":"run-s test:unit test:prettier test:lint test:ts","build":"rollup --bundleConfigAsCjs -c rollup.config.js","clean":"rimraf node_modules coverage dist","watch":"rollup --bundleConfigAsCjs -w -c rollup.config.js","test:ts":"tsc","prettier":"prettier -w src","test:lint":"eslint .","test:unit":"jest --env=jsdom --coverage --coverageDirectory=coverage/","test:watch":"jest --watch --env=jsdom","test:prettier":"prettier -c src"},"_npmUser":{"name":"ajainvivek","email":"ajainvivek07@gmail.com"},"repository":{"url":"git+https://github.com/ginkgobioworks/react-json-schema-form-builder.git","type":"git"},"_npmVersion":"10.8.2","description":"React Component for visually configuring a JSON Schema-based form","directories":{},"_nodeVersion":"20.18.1","dependencies":{"react-jss":"^10.4.0","classnames":"^2.2.6","reactstrap":"^8.10.0 || ^9.0.0","react-select":"^5.0.0","@hello-pangea/dnd":"^17.0.0","@fortawesome/react-fontawesome":"^0.1.14 || ^0.2.0","@fortawesome/fontawesome-svg-core":"^6.1.1","@fortawesome/free-solid-svg-icons":"^5.15.3 || ^6.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.3","react":"^18.2.0","enzyme":"^3.11.0","eslint":"^9.14.0","rimraf":"^6.0.1","globals":"^15.12.0","postcss":"^8.4.49","prettier":"^3.0.3","bootstrap":"^5.1.3","react-dom":"^18.2.0","@eslint/js":"^9.15.0","babel-jest":"^29.0.3","reactstrap":"^9.0.0","typescript":"^5.0.4","@babel/core":"^7.16.7","@types/jest":"^29.5.1","@types/node":"^22.8.6","npm-run-all":"^4.1.5","tailwindcss":"^3.4.16","@types/react":"^18.2.6","autoprefixer":"^10.4.20","@jest/globals":"^29.5.0","@types/enzyme":"^3.10.13","@eslint/eslintrc":"^3.2.0","@types/react-dom":"^18.2.4","rollup-plugin-ts":"^3.4.5","@babel/preset-env":"^7.16.7","eslint-plugin-node":"^11.0.0","@babel/preset-react":"^7.16.7","eslint-plugin-react":"^7.21.5","eslint-plugin-import":"^2.22.1","eslint-plugin-promise":"^7.1.0","eslint-config-prettier":"^9.0.0","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-prettier":"^5.0.0","jest-environment-jsdom":"^29.0.2","@babel/preset-typescript":"^7.21.5","@typescript-eslint/parser":"^8.12.2","eslint-plugin-react-hooks":"^5.0.0","@typescript-eslint/eslint-plugin":"^8.12.2","@cfaester/enzyme-adapter-react-18":"0.8.0"},"peerDependencies":{"react":"^16.x || ^17.x || ^18.x","bootstrap":"^4.6.0 || ^5.1.3"},"_npmOperationalInternal":{"tmp":"tmp/react-json-schema-form-builder_0.0.1_1733893345328_0.8901077497204648","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@brainfish-ai/react-json-schema-form-builder","version":"0.0.2","keywords":["react","form","json-schema","visual"],"author":{"url":"https://github.com/nathanalam","name":"Nathan Alam","email":"nathanalam99@gmail.com"},"license":"Apache-2.0","_id":"@brainfish-ai/react-json-schema-form-builder@0.0.2","maintainers":[{"name":"ajainvivek","email":"ajainvivek07@gmail.com"},{"name":"johnfumaster","email":"johnfumaster@gmail.com"}],"homepage":"https://github.com/ginkgobioworks/react-json-schema-form-builder#readme","bugs":{"url":"https://github.com/ginkgobioworks/react-json-schema-form-builder/issues","email":"devs@ginkgobioworks.com"},"dist":{"shasum":"3bc16483ac3652b7dcc84f41f6d2b2a849fcc563","tarball":"https://registry.npmjs.org/@brainfish-ai/react-json-schema-form-builder/-/react-json-schema-form-builder-0.0.2.tgz","fileCount":8,"integrity":"sha512-/aVZxKz9MBkixNFWHTPBdUo+Ay9cMXQuPIFJV/G2yAYWJWv68MxkOCokUR9vinVvb25IAq3e4FaLnsndgvvSEA==","signatures":[{"sig":"MEQCIB1olXOenwoHH04i2EP//kbITa+xeDwEsfCzBxnXZH3GAiAZa6rCAo/dKSaDH22Qa9PdIJTv2nYZFRjCuVX/pcucUQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":373165},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","source":"src/index.ts","engines":{"node":">=16"},"gitHead":"c87d7436f6b2b67e214ab951481cd5fc910b863e","scripts":{"test":"run-s test:unit test:prettier test:lint test:ts","build":"rollup --bundleConfigAsCjs -c rollup.config.js","clean":"rimraf node_modules coverage dist","watch":"rollup --bundleConfigAsCjs -w -c rollup.config.js","test:ts":"tsc","prettier":"prettier -w src","test:lint":"eslint .","test:unit":"jest --env=jsdom --coverage --coverageDirectory=coverage/","test:watch":"jest --watch --env=jsdom","test:prettier":"prettier -c src"},"_npmUser":{"name":"ajainvivek","email":"ajainvivek07@gmail.com"},"repository":{"url":"git+https://github.com/ginkgobioworks/react-json-schema-form-builder.git","type":"git"},"_npmVersion":"10.8.2","description":"React Component for visually configuring a JSON Schema-based form","directories":{},"_nodeVersion":"20.18.1","dependencies":{"react-jss":"^10.4.0","classnames":"^2.2.6","reactstrap":"^8.10.0 || ^9.0.0","react-select":"^5.0.0","@hello-pangea/dnd":"^17.0.0","@fortawesome/react-fontawesome":"^0.1.14 || ^0.2.0","@fortawesome/fontawesome-svg-core":"^6.1.1","@fortawesome/free-solid-svg-icons":"^5.15.3 || ^6.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.3","react":"^18.2.0","enzyme":"^3.11.0","eslint":"^9.14.0","rimraf":"^6.0.1","globals":"^15.12.0","postcss":"^8.4.49","prettier":"^3.0.3","bootstrap":"^5.1.3","react-dom":"^18.2.0","@eslint/js":"^9.15.0","babel-jest":"^29.0.3","reactstrap":"^9.0.0","typescript":"^5.0.4","@babel/core":"^7.16.7","@types/jest":"^29.5.1","@types/node":"^22.8.6","npm-run-all":"^4.1.5","@types/react":"^18.2.6","autoprefixer":"^10.4.20","@jest/globals":"^29.5.0","@types/enzyme":"^3.10.13","@eslint/eslintrc":"^3.2.0","@types/react-dom":"^18.2.4","rollup-plugin-ts":"^3.4.5","@babel/preset-env":"^7.16.7","eslint-plugin-node":"^11.0.0","@babel/preset-react":"^7.16.7","eslint-plugin-react":"^7.21.5","eslint-plugin-import":"^2.22.1","eslint-plugin-promise":"^7.1.0","eslint-config-prettier":"^9.0.0","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-prettier":"^5.0.0","jest-environment-jsdom":"^29.0.2","@babel/preset-typescript":"^7.21.5","@typescript-eslint/parser":"^8.12.2","eslint-plugin-react-hooks":"^5.0.0","@typescript-eslint/eslint-plugin":"^8.12.2","@cfaester/enzyme-adapter-react-18":"0.8.0"},"peerDependencies":{"react":"^16.x || ^17.x || ^18.x","bootstrap":"^4.6.0 || ^5.1.3"},"_npmOperationalInternal":{"tmp":"tmp/react-json-schema-form-builder_0.0.2_1734046911397_0.41149696768271493","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2024-12-11T05:02:25.228Z","modified":"2025-12-22T23:57:56.727Z","0.0.1":"2024-12-11T05:02:25.529Z","0.0.2":"2024-12-12T23:41:51.590Z"},"bugs":{"url":"https://github.com/ginkgobioworks/react-json-schema-form-builder/issues","email":"devs@ginkgobioworks.com"},"author":{"url":"https://github.com/nathanalam","name":"Nathan Alam","email":"nathanalam99@gmail.com"},"license":"Apache-2.0","homepage":"https://github.com/ginkgobioworks/react-json-schema-form-builder#readme","keywords":["react","form","json-schema","visual"],"repository":{"url":"git+https://github.com/ginkgobioworks/react-json-schema-form-builder.git","type":"git"},"description":"React Component for visually configuring a JSON Schema-based form","maintainers":[{"email":"ajainvivek07@gmail.com","name":"ajainvivek"},{"email":"johnfumaster@gmail.com","name":"johnfumaster"},{"email":"charlie.shen@brainfi.sh","name":"charlie.shen.brainfi.sh"},{"email":"emmanuel@brainfi.sh","name":"e.brainfish"}],"readme":"# React JSON Schema Form Editor\n\n[![npm](https://img.shields.io/npm/v/@brainfish-ai/react-json-schema-form-builder)](https://www.npmjs.com/package/@brainfish-ai/react-json-schema-form-builder)\n[![CI](https://github.com/ginkgobioworks/react-json-schema-form-builder/workflows/CI/badge.svg?branch=main)](https://github.com/ginkgobioworks/react-json-schema-form-builder/actions)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![GitHub issues](https://img.shields.io/github/issues-raw/ginkgobioworks/react-json-schema-form-builder)](https://github.com/ginkgobioworks/react-json-schema-form-builder/issues)\n\n\n![demo](https://react-json-schema-form-builder.readthedocs.io/en/latest/img/visualDemo.gif)\n\nThis repository contains code for a React JS Component called the `FormBuilder` that allows the user to visually configure a [JSON Schema encoded form](https://json-schema.org/) by dragging, dropping, and editing card elements. An example use case for this tool could be for building an app that allows users to create and distribute their own surveys. The React JSON Schema Form Builder provides components to allow users to dynamically build such survey forms. The Form Builder is also customizable, and can incorporate novel form elements (like a special email address or file upload input), specified by the developer building the survey creation app.\n\nThis component is wrapped around a demo app that demonstrates how the tool can be used in conjunction with a code editor and [Mozilla's React JSON schema form viewer](https://github.com/rjsf-team/react-jsonschema-form) to build a form and maintain a live, code representation of it in real time.\n\nThe Form Builder is available as an NPM package [here](https://www.npmjs.com/package/@brainfish-ai/react-json-schema-form-builder).\n\nView the Form Builder in action [here](https://ginkgobioworks.github.io/react-json-schema-form-builder/)\n\nMore extensive documentation is available [here](https://react-json-schema-form-builder.readthedocs.io/en/main/)\n\n## Quickstart\n\n```bash\nnpm i --save @brainfish-ai/react-json-schema-form-builder\n```\n\nImport the tool as a react component in your Node project:\n\n## Usage\n\n```javascript\nimport React, { Component } from 'react';\n\nimport {FormBuilder} from '@brainfish-ai/react-json-schema-form-builder';\n\nclass Example extends Component {\n  constructor(props) {\n    super(props);\n    this.state = {\n      schema: '',\n      uischema: ''\n    };\n  }\n  render() {\n    return (\n      <FormBuilder\n        schema={this.state.schema}\n        uischema={this.state.uischema}\n        onChange={(newSchema: string, newUiSchema: string) => {\n          this.setState({\n            schema: newSchema,\n            uischema: newUiSchema\n          })\n        }}\n      />\n    );\n  }\n}\n```\n\nFor more usage examples, see the [Usage documentation page](https://react-json-schema-form-builder.readthedocs.io/en/latest/Usage/)\n\n## Contributing\n\nSee the [Contributing page](https://github.com/ginkgobioworks/react-json-schema-form-builder/blob/main/CONTRIBUTING.md) for information about improving the Form Builder.\n\n## License\n\nCopyright 2020-2023 [Ginkgo Bioworks](https://www.ginkgobioworks.com/), Inc. Licensed Apache 2.0.\n","readmeFilename":"README.md"}