dev

JSON Merge

Deep-merge two JSON documents with a conflict report. Pass two files (base, override); the second wins on collisions. Picks an array strategy (replace / concat / union) and emits the merged result alongside a list of every path where base and override disagreed. Pairs with json-diff (compare) for change-management workflows.

Loading…

About JSON Merge

JSON Merge deep-merges two JSON documents and hands back a conflict report. You pass a base and an override; the override wins on collisions, you pick how arrays combine (replace, concat, or union), and the tool emits both the merged result and a list of every path where the two disagreed. It's built for config and change-management work, and it runs entirely in your browser.

Category
dev
Input
Accepts: application/json or text/plain.
Output
Outputs: application/json.
Cost
Free, runs in your browser
Memory
low
Privacy: JSON Merge runs entirely on your device. Files you provide never leave your browser — no uploads, no server, no tracking. The page works offline once loaded.

Common uses

  • Layer an environment-specific override file on top of a base config and see exactly what changed
  • Merge default settings with user settings while keeping a record of which keys the user overrode
  • Combine two feature-flag JSON files, using union on arrays so no flags get dropped
  • Reconcile two halves of a config split across teams and review every conflicting path before committing
  • Apply a patch document to a base record and audit the collisions it introduced
  • Build a merged fixture for tests from a shared base plus a scenario-specific override

Frequently asked questions

Which document wins when keys collide?

The override (the second file) wins on collisions during the deep merge.

How are arrays handled?

You choose a strategy: replace (override's array wins), concat (append them), or union (combine and de-duplicate).

What's in the conflict report?

A list of every path where the base and override disagreed, so you can review exactly what the merge changed before trusting the result.

What does it accept and return?

Two JSON documents as input (application/json or plain text), and it returns the merged JSON alongside the conflict report.

Is my data sent anywhere?

No. The merge runs in your browser, so both config files stay on your device.

Keywords

  • json
  • merge
  • deep-merge
  • config
  • diff
  • conflict

Try next