MCPcopy Index your code
hub / github.com/loggerhead/json4u

github.com/loggerhead/json4u @v3.7.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.7.2 ↗ · + Follow
865 symbols 2,558 edges 252 files 25 documented · 3% 44 cross-repo links updated 18d ago★ 3,2098 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

JSON For You

The best JSON visualization and processing tool.

Try it now · 中文网址

Features

  • Graph and Table view modes.
  • Structured and text comparisons.
  • Validate with error context.
  • Nested parsing.
  • Supporting jq.
  • Import and export CSV file.
  • Well-designed and easy-to-use UI.

Roadmap

  • [x] Improve performance to support large files (>= 1mb).
  • [x] Only render visible nodes in graph mode.
  • [x] Optimize performance of table mode (see discussion).
  • [ ] ~~Use wasm in web worker for parsing (use rust)~~.
  • [ ] ~~Consider changing the editor to Ace.~~
  • [x] Improve interoperability between left and right panels.
  • [x] Support search in graph mode (synchronize reveal between left and right panels).
  • [ ] ~~Support search via JSON path (synchronize reveal)~~.
  • [x] Support modifications in view mode.
  • [ ] ~~Support synchronize fold and unfold between left and right panels~~.
  • [x] Support displaying the key count of an object/array node after folding.
  • [ ] Add a group API to support file upload and retrieval.
  • [ ] Support share with an expiration date.
  • [ ] Support auto upload local files to server.
  • [ ] Provide a command line tool (#24).
  • [ ] Provide vscode plugin.
  • [ ] Support preprocessing via jq before fetch.
  • [ ] Integrating AI to provide certain functions (under research).
  • [ ] Integrating basic AI capabilities in server side.
  • [ ] Experience enhancement
  • [x] Support JSON HERO like value preview
    • [x] Support for timestamp and date strings.
    • [x] Support URL parsing.
    • [x] Support image preview.
    • [ ] ~~Support for previewing leaf nodes at the same level.~~
  • [ ] Support jsonc and jsonl.
    • [ ] Design the UI for jsonl.
  • [ ] Support collapsing blocks with no differences in comparison results.
  • [ ] Change the switch to dropdown menu in comparison button.
    • [ ] Support key comparison for object nodes.
  • [ ] Support operations at the node dimension.
    • [ ] Support copy a node.
    • [ ] Support delete a node.
    • [ ] Consider supporting the ability to move a node.
    • [ ] Consider supporting the elevation of node levels.

Setup

  1. git clone --depth 100 https://github.com/loggerhead/json4u
  2. Run pnpm install in repo's root folder.
  3. Run pnpm dev to run the development server.
  4. Open http://localhost.json4u.com:3000 with your browser to see the result.
  5. Make changes to the code and see the result in the browser.

If you want to test webhook:

  1. Install whcli: npm install -g @webhooksite/cli.
  2. Get token from webhook.site.
  3. Run whcli forward --target=http://localhost.json4u.com:3000 --token=TOKEN_YOU_GET

Contribution Guide

I'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:

  1. Search for the TODO keyword in the code first. If it's found, then you can work base on it directly.
  2. Otherwise:

  3. 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.

  4. If fixing bug, provide a description of the bug in the PR.
  5. 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.

  6. 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.

  7. Run pnpm test to make sure your code pass the core tests.

Acknowledgment

  • Famous library that most people know: React, Tailwind CSS, Next.js, Zustand and Zod.
  • React Flow: Extensible and customizable library for building interactive graphs.
  • next-intl: An out-of-the-box i18n library for Next.js that considers almost all of your usage scenarios.
  • Vitest: A blazing fast unit testing framework for JavaScript.
  • And all the developers who contributed to open source!

License

Apache License © 2022-Present loggerhead

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Function 607
Method 136
Interface 95
Class 26
Enum 1

Languages

TypeScript100%

Modules by API surface

public/jq/1.7/jq.js114 symbols
src/lib/parser/tree.ts38 symbols
src/stores/statusStore.ts28 symbols
src/lib/editor/editor.ts28 symbols
src/lib/compare/histogram.ts27 symbols
src/lib/editor/comparer.ts26 symbols
src/lib/parser/parse.ts25 symbols
src/lib/table/tableNode.ts19 symbols
src/lib/utils.ts16 symbols
src/lib/graph/utils.ts15 symbols
src/lib/graph/layout.ts15 symbols
src/lib/worker/stores/viewStore.ts14 symbols

Dependencies from manifests, versioned

@babel/preset-env7.25.4 · 1×
@biowasm/aioli3.2.0 · 1×
@hcaptcha/types1.0.4 · 1×
@hookform/resolvers3.9.0 · 1×
@lemonsqueezy/lemonsqueezy.js3.3.0 · 1×
@mdx-js/loader3.0.1 · 1×
@mdx-js/react3.0.1 · 1×
@monaco-editor/react4.7.0 · 1×
@next/bundle-analyzer14.2.6 · 1×
@next/mdx14.2.6 · 1×
@next/third-parties14.2.13 · 1×
@playwright/test1.48.2 · 1×

For agents

$ claude mcp add json4u \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page