{"id":48091729,"url":"https://github.com/samuellawrentz/rc-json-editor","last_synced_at":"2026-04-04T15:31:49.139Z","repository":{"id":57914845,"uuid":"528723245","full_name":"samuellawrentz/rc-json-editor","owner":"samuellawrentz","description":"A simple react component to handle JSON editing. No dependencies. Typescript. 😉","archived":false,"fork":false,"pushed_at":"2023-04-20T14:23:15.000Z","size":2966,"stargazers_count":7,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-08-08T19:41:51.711Z","etag":null,"topics":["json","json-editor","json-tree-traversal","json-typescript","json-viewer","react-json","react-json-editor","react-json-tree","react-jsonschema-form"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/samuellawrentz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-08-25T06:27:29.000Z","updated_at":"2024-04-07T17:47:02.000Z","dependencies_parsed_at":"2022-09-04T17:22:25.763Z","dependency_job_id":null,"html_url":"https://github.com/samuellawrentz/rc-json-editor","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/samuellawrentz/rc-json-editor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuellawrentz%2Frc-json-editor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuellawrentz%2Frc-json-editor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuellawrentz%2Frc-json-editor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuellawrentz%2Frc-json-editor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/samuellawrentz","download_url":"https://codeload.github.com/samuellawrentz/rc-json-editor/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuellawrentz%2Frc-json-editor/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31403959,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["json","json-editor","json-tree-traversal","json-typescript","json-viewer","react-json","react-json-editor","react-json-tree","react-jsonschema-form"],"created_at":"2026-04-04T15:31:46.342Z","updated_at":"2026-04-04T15:31:48.598Z","avatar_url":"https://github.com/samuellawrentz.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rc-json-editor\nA simple react component that handles your JSON editing woes in a wink 😉\n\n## The What and Why\nThis is a simple React Component _(and hence the \"rc\")_ that takes your JSON as input and renders a beautiful UI which allows you to edit the JSON on the go. I searched the web for this component for my specific needs and was not able to find one. And so, I created one.\n\n### Why do you want a json-editor component?\nYou may think, why waste time on a component, while you can put `content-editable=\"true\"` on a `code` tag and allow your users to edit their JSON themselves. But the catch here is, not everyone knows the syntax of a JSON. This tool could help in that case.\n\n### This is not the \"Perfect\" component\nIt is just a start, issues and PRs are welcome if you find this component helping your needs. Find the [Demo Storybook](https://samuellawrentz.github.io/rc-json-editor/?path=/story/introduction--page)\n\n## The How?\nThis component purely works on a custom Datatype called `JsonArray` which extends the `Array` class. So you know, it is an array of sorts, with some additional custom components.\n\nThis is a in-progress doc, so please visit the `JsonArrayClass.ts` file for the complete implementation.\n\n\u003e Changes are welcome so are feedbacks.\n\n## Dependencies\nThere are no big dependencies per se.\n- react\n- react-dom\n\n## TBD: Things to do\n- Provide the full control of the rendering part as a prop, so that users can render the UI based on their needs.\n- Provide event callbacks\n\n## Usage\n\nInstall the package from npm\n\n```bash\nnpm install rc-json-editor\n```\n\nThis is a simple usage example\n\n```jsx\nimport { JsonEditor } from 'rc-json-editor';\n\n\u003cJsonEditor\n  data={{\n    order: {\n      id: 'order_124831sf23j123',\n      isSuccess: true,\n      price: 70000\n    }\n  }}\n  onChange={() =\u003e {}}\n/\u003e\n```\n\n## Props\n- `data` - A JSON that needs to be viewed/edited\n- `onChange` - A callback that gets executed when the `data` is updated\n\n\n#### Storybook\nFind the demo here - https://samuellawrentz.github.io/rc-json-editor/?path=/story/introduction--page\n\n#### NPM Package\nNPM package link - https://www.npmjs.com/package/rc-json-editor\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamuellawrentz%2Frc-json-editor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamuellawrentz%2Frc-json-editor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamuellawrentz%2Frc-json-editor/lists"}