{"id":15237709,"url":"https://github.com/loggerhead/json4u","last_synced_at":"2025-05-14T14:07:52.005Z","repository":{"id":257614215,"uuid":"453847104","full_name":"loggerhead/json4u","owner":"loggerhead","description":null,"archived":false,"fork":false,"pushed_at":"2024-12-15T09:08:21.000Z","size":512366,"stargazers_count":2494,"open_issues_count":9,"forks_count":126,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-04-11T06:14:07.049Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://json4u.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/loggerhead.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-01-31T01:22:58.000Z","updated_at":"2025-04-10T09:06:08.000Z","dependencies_parsed_at":"2025-04-11T05:11:36.736Z","dependency_job_id":"3355496c-b4ff-448f-8436-bd2e8407b728","html_url":"https://github.com/loggerhead/json4u","commit_stats":null,"previous_names":["loggerhead/json4u"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loggerhead%2Fjson4u","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loggerhead%2Fjson4u/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loggerhead%2Fjson4u/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loggerhead%2Fjson4u/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/loggerhead","download_url":"https://codeload.github.com/loggerhead/json4u/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254159194,"owners_count":22024558,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-09-29T10:01:23.368Z","updated_at":"2025-05-14T14:07:51.955Z","avatar_url":"https://github.com/loggerhead.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n\u003cimg src=\"./src/app/icon.svg\" height=\"150\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003e\nJSON For You\n\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\nThe best JSON visualization and processing tool.\n\u003cbr /\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://json4u.com/editor\"\u003e\u003cb\u003eTry it now\u003c/b\u003e\u003c/a\u003e · \u003ca href=\"https://json4u.cn\"\u003e中文网址\u003c/a\u003e\n\u003c/p\u003e\n\n## Features\n\n- Graph and Table view modes.\n- Structured and text comparisons.\n- Validate with error context.\n- Nested parsing.\n- Supporting [jq](https://jqlang.github.io/jq).\n- Import and export CSV file.\n- Well-designed and easy-to-use UI.\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003cimg src=\"./public/example/jq.gif\"\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cimg src=\"./public/example/nest-parse.webp\"\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003cimg src=\"./public/example/graph.webp\"\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cimg src=\"./public/example/table.webp\"\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n## Roadmap\n\n- [x] Improve performance to support large files (\u003e= 1mb).\n  - [x] Only render visible nodes in graph mode.\n  - [ ] Optimize performance of table mode (see [discussion](https://github.com/loggerhead/json4u/discussions/55)).\n  - [ ] ~~Use wasm in web worker for parsing (use rust)~~.\n  - [ ] ~~Consider [changing the editor to Ace](https://medium.com/miro-engineering/how-we-integrated-a-code-editor-on-the-miro-canvas-a41e0eff7f21).~~\n- [ ] Improve interoperability between left and right panels.\n  - [x] Support search in graph mode (synchronize reveal between left and right panels).\n  - [ ] ~~Support search via JSON path (synchronize reveal)~~.\n  - [ ] Support modifications in view mode.\n  - [ ] Support synchronize fold and unfold between left and right panels.\n  - [ ] Support displaying the key count of an object/array node after folding.\n- [ ] Add a group API to support file upload and retrieval.\n  - [ ] Support share with an expiration date.\n  - [ ] Support auto upload local files to server.\n  - [ ] Provide a command line tool ([#24](https://github.com/loggerhead/json4u/issues/24)).\n  - [ ] Provide vscode plugin.\n  - [ ] Support preprocessing via jq before fetch.\n- [ ] Integrating AI to provide certain functions (under research).\n  - [ ] Integrating basic AI capabilities in server side.\n- [ ] Experience enhancement\n  - [ ] Support [JSON HERO](https://jsonhero.io/) like value preview\n    - [ ] Support for timestamp and date strings.\n    - [ ] Support URL parsing.\n    - [ ] Support image preview.\n    - [ ] Support for previewing leaf nodes at the same level.\n  - [ ] Support jsonc and jsonl.\n    - [ ] Design the UI for jsonl.\n  - [ ] Support collapsing blocks with no differences in comparison results.\n  - [ ] Change the switch to dropdown menu in comparison button.\n    - [ ] Support key comparison for object nodes.\n  - [ ] Support operations at the node dimension.\n    - [ ] Support copy a node.\n    - [ ] Support delete a node.\n    - [ ] Consider supporting the ability to move a node.\n    - [ ] Consider supporting the elevation of node levels.\n\n## Setup\n\n1. `git clone --depth 100 https://github.com/loggerhead/json4u`\n2. Run `pnpm install` in repo's root folder.\n3. Run `pnpm dev` to run the development server.\n4. Open [http://localhost.json4u.com:3000](http://localhost.json4u.com:3000) with your browser to see the result.\n5. Make changes to the code and see the result in the browser.\n\nIf you want to test webhook:\n\n1. Install whcli: `npm install -g @webhooksite/cli`.\n2. Get token from [webhook.site](https://webhook.site/).\n3. Run `whcli forward --target=http://localhost.json4u.com:3000 --token=TOKEN_YOU_GET`\n\n## Contribution Guide\n\nI'm really excited that you are interested in contributing to JSON For You. Before submitting your contribution, please make sure to take a moment and read through the following guide:\n\n1. Search for the `TODO` keyword in the code first. If it's found, then you can work base on it directly.\n2. Otherwise:\n\n   - If you want to add a new feature, provide a convincing reason to add this feature. Ideally, you should open a suggestion issue first and have it approved before working on it.\n   - If fixing bug, provide a description of the bug in the PR.\n   - Other minor changes that don't affect the logic of the code, such as fixing typos, translating comments into English, and adding comments, are all welcome. Just submit a PR.\n\n3. I wish to keep JSON For You lightweight and fast. Please being aware of the number of npm dependencies and their size and don't add **unnecessary** dependencies.\n4. Run `pnpm test` to make sure your code pass the core tests.\n\n## Acknowledgment\n\n- Famous library that most people know: [React](https://react.dev/), [Tailwind CSS](https://tailwindcss.com/), [Next.js](https://nextjs.org/), [Zustand](https://zustand-demo.pmnd.rs/) and [Zod](https://zod.dev/).\n- [React Flow](https://github.com/xyflow/xyflow): Extensible and customizable library for building interactive graphs.\n- [next-intl](https://github.com/amannn/next-intl): An out-of-the-box i18n library for Next.js that considers almost all of your usage scenarios.\n- [Vitest](https://vitest.dev/): A blazing fast unit testing framework for JavaScript.\n- And all the developers who contributed to open source!\n\n## License\n\n[Apache](./LICENSE) License © 2022-Present [loggerhead](https://github.com/loggerhead)\n\n\n","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floggerhead%2Fjson4u","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Floggerhead%2Fjson4u","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floggerhead%2Fjson4u/lists"}