{
  "slug": "json-diff",
  "name": "gizza-ai/json-diff",
  "version": "0.1.0",
  "title": "JSON Diff — compare two JSON documents — gizza.ai",
  "description": "Compare two JSON documents and see exactly what was added, removed or changed, with full JSON paths — in your browser. Nothing is uploaded.",
  "tags": [
    "json diff",
    "compare json",
    "json compare",
    "json difference",
    "diff json online"
  ],
  "category": "data",
  "urls": {
    "page": "https://gizza.ai/tools/json-diff/",
    "markdown": "https://gizza.ai/tools/json-diff/index.md",
    "descriptor": "https://gizza.ai/tools/json-diff/tool.json",
    "deep_link_example": "https://gizza.ai/tools/json-diff/?left=%7B%22name%22%3A%20%22alice%22%2C%20%22age%22%3A%2030%7D&right=%7B%22name%22%3A%20%22alice%22%2C%20%22age%22%3A%2031%2C%20%22city%22%3A%20%22NYC%22%7D&indent=2"
  },
  "cli": "gizza tool json-diff '{\"name\": \"alice\", \"age\": 30}' 'right={\"name\": \"alice\", \"age\": 31, \"city\": \"NYC\"}'",
  "tool": {
    "description": "Compare two JSON documents and report their structural differences. Objects are compared key-by-key and arrays index-by-index, recursively. Returns a JSON report: { equal, added, removed, changed, changes:[{ path, kind: added|removed|changed, old?, new? }] } where each path is a JSON path like $.a.b or $.list[2]. Output indentation is configurable (indent=0 minifies). Runs locally.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "indent": {
          "default": 2,
          "description": "Output indentation in spaces (1-8). Use 0 to minify. Default 2.",
          "maximum": 8,
          "minimum": 0,
          "type": "integer"
        },
        "left": {
          "description": "The first (left/old) JSON document.",
          "type": "string"
        },
        "right": {
          "description": "The second (right/new) JSON document to compare against the first.",
          "type": "string"
        }
      },
      "required": [
        "left",
        "right"
      ],
      "type": "object"
    }
  }
}