--- id: jsonmerge version: "1.9.2" license: MIT license_treatment: permissive maintenance: abandoned --- # jsonmerge — Merge a series of JSON documents. License: permissive · Maintenance: abandoned · Downloads: 1.3M/mo ## What it is and what it does jsonmerge combines multiple JSON documents into one, applying merge logic that you control via JSON schema annotations. By default, it merges objects by combining their fields and overwrites other types, but you can customize behavior per field using schema keywords like mergeStrategy (e.g., 'append' to concatenate arrays, 'version' to track historical values). The package depends on jsonschema and is designed for scenarios where different authors contribute to shared documents or where you need to track document evolution across revisions. The library works by accepting a base document and a head document, then producing a merged result. You can chain multiple merges to build up a document from many sources. It also provides a way to generate an output schema that describes the structure of merged results, which may differ from the input schema when strategies like 'version' transform field types. Use it for: - Consolidating configuration files from multiple sources where some fields should append and others should overwrite. - Tracking versioned changes to a document over time, keeping a limited history of field updates with metadata. - Merging contributions from multiple authors into a shared JSON document template. - Building incremental snapshots by repeatedly merging new revisions into a base document. - Combining API responses or data exports from different systems into a unified structure. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Merges multiple JSON documents into a single document using configurable merge strategies applied via JSON schema keywords. Yes, if you need schema-driven JSON merging and can tolerate an abandoned package. The library is stable (no known vulnerabilities, low install friction, permissive license), but you should validate input documents yourself and not expect bug fixes or compatibility updates. Best suited for internal tools or stable use cases where you control the merge logic and document structure. ## Install pip install jsonmerge uv add jsonmerge poetry add jsonmerge ## Installing jsonmerge Before you install: Low install friction with a single runtime dependency (jsonschema). However, the package is abandoned—last release was 2023-07-19 and no commits recorded since. No active maintenance means bug fixes or compatibility updates are unlikely. License in practice: MIT license is permissive, allowing commercial and private use with minimal restrictions. You may use, modify, and distribute the package freely provided you retain the license notice. Quickstart: pip install jsonmerge from jsonmerge import merge base = {"foo": 1, "bar": ["one"]} head = {"bar": ["two"], "baz": "Hello, world!"} result = merge(base, head) Verify before relying: - Whether abandoned status affects real-world reliability for stable use cases (no recent vulnerabilities reported, but no active support). - Compatibility with modern Python versions beyond what classifiers indicate (Python 2 and 3 listed, but no requires_python constraint specified). ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 1.3M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags json document merging, merge json objects, json schema merge strategies, combine json documents, jsonschema-based merging, versioned json updates, multi-document json consolidation, json-processing, schema-driven, document-consolidation [View on SkillFed](https://skillfed.io/packages/jsonmerge) · [View on PyPI](https://pypi.org/project/jsonmerge/)