Skip to content
| Marketplace
Sign in
Visual Studio Code>Linters>JSONOpsNew to Visual Studio Code? Get it now.
JSONOps

JSONOps

Aakash Dhakal

|
3 installs
| (1) | Free
JSON QA and safe operations for large JSON documents
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

JSONOps

JSONOps is a VS Code extension for JSON QA workflows, with safeguards for large files so analysis does not freeze or crash the editor.

Features

  • JSON QA analysis for the active document:
    • syntax validation
    • structural metrics (nodes, depth, arrays, key counts)
    • data quality checks (mixed-type arrays, empty strings, extreme string lengths)
    • duplicate detection for configurable fields (default: sku)
    • odd value detection for repeated key paths
    • consistency checks for value types under the same key path
    • HTML tag detection in string values
  • JSON-to-JSON comparison for the active file against another selected JSON file, including added/removed/changed summaries and path-level difference previews
    • opens a side-by-side diff tab (like commit compare) by default
  • Sidebar quick tools:
    • one-click actions for QA, compare, syntax, format/minify, and split
    • efficiency panel showing parse threshold and semantic-check behavior
  • Safe mode for large JSON documents:
    • skips expensive full parsing above a configurable size
    • runs a fast structural scan with approximate metrics
  • Safe transform commands:
    • format JSON
    • minify JSON
    • both are blocked for files above the configured parse limit to avoid memory spikes
  • Large-array chunk export command:
    • splits top-level arrays into multiple JSON files without full-document parse
    • writes a split manifest with chunk counts and output metadata
  • Problems panel diagnostics for parse and QA findings
  • Detailed output report in the JSONOps output channel

Commands

  • JSONOps: Run QA Analysis
  • JSONOps: Run QA with Custom Duplicate Fields
  • JSONOps: Open Sidebar
  • JSONOps: Compare Active JSON Against Another JSON
  • JSONOps: Validate Syntax
  • JSONOps: Large JSON Safe Summary
  • JSONOps: Format JSON Safely
  • JSONOps: Minify JSON Safely
  • JSONOps: Split Top-Level Array into Chunks

Open the Command Palette and run these commands on a JSON document.

Extension Settings

  • jsonops.maxFullParseMb
    • default: 10
    • max file size for full parse operations (JSON.parse)
  • jsonops.maxRecommendedNodeCount
    • default: 250000
    • warning threshold for total node count
  • jsonops.maxRecommendedDepth
    • default: 32
    • warning threshold for nesting depth
  • jsonops.maxRecommendedArrayLength
    • default: 10000
    • warning threshold for largest array length
  • jsonops.maxRecommendedStringLength
    • default: 10000
    • warning threshold for longest string value
  • jsonops.duplicateFieldNames
    • default: ["sku"]
    • fields used for duplicate primitive value checks
  • jsonops.enableHtmlTagCheck
    • default: true
    • enables detection of HTML-like tags in string values
  • jsonops.oddValueMaxFrequencyRatio
    • default: 0.15
    • odd value threshold ratio for repeated key paths
  • jsonops.oddValueMinSampleCount
    • default: 5
    • minimum sample count before odd value detection runs
  • jsonops.maxReportedIssuesPerRule
    • default: 25
    • caps the number of reported issues per QA rule
  • jsonops.compareDiffPreviewLimit
    • default: 10
    • maximum number of sample diffs shown for JSON comparison
  • jsonops.openDiffEditorOnCompare
    • default: true
    • opens commit-style side-by-side diff tab when running compare
  • jsonops.splitChunkSize
    • default: 1000
    • number of top-level array items per split file
  • jsonops.splitPrettyPrint
    • default: false
    • pretty-print split chunk output (slower on large chunks)
  • jsonops.splitOutputFolderSuffix
    • default: -chunks
    • suffix used when creating timestamped split output folders

Large File Behavior

When a document exceeds jsonops.maxFullParseMb, JSONOps switches to fast mode. Fast mode performs a single-pass structural scan and avoids full object creation in memory. This keeps the extension responsive for very large files.

Known Limitations

  • Fast mode reports approximate counts (key count and depth estimates).
  • Formatting/minifying requires full parse and is intentionally blocked for files above the configured limit.
  • Split command requires the top-level JSON value to be an array.

Development

  • Build: npm run compile
  • Watch mode: npm run watch
  • Lint: npm run lint
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft