Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
JsonPatcher

JsonPatcher

A tool for patching minecrafts json files, without overrding them, using a custom DSL

5,440
8
Library
Utility

Compatibility

Minecraft: Java Edition

1.21.x
1.20.6
1.20.4
1.20.1–1.20.2

Platforms

Fabric
Quilt

Supported environments

Client-side
Server-side
Client and server (optional)

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Links

Report issues View source Visit wiki Join Discord server

Creators

MattiDragon
MattiDragon Owner

Details

Licensed MIT
Published last year
Updated 2 months ago
DescriptionChangelogVersions

JsonPatcher

Badge showing the amount of downloads on modrinth Badge showing the amount of downloads on curseforge Badge linking to issues on github Badge linking to support on discord

JsonPatcher is a mod that allows you to modify json files in datapacks and resourcepacks without overriding them. This is primarily useful for mod developers and pack makers, but can also be used by players to modify their own packs.

V2 Disclaimer

JsonPatcher v2 is currently in beta. V2 introduces a bunch of new features including global patches for mods and modpacks. There's currently no documentation available for v2 as it had to be rushed out for BlanketCon '25. Parts of the v1 docs may be correct, but expect things not to work perfectly.

Usage

Gradle dependency (for mod developers)

You can add jsonpatcher to your mods buildscript like this:

repositories {
    maven {
        url 'https://jitpack.io'
    }
}

dependencies {
    modImplementation(include("com.github.mattidragon:jsonpatcher:${jsonpatcher_version}"))
}

To begin using jsonpatcher, just create a file with the .jsonpatch extension in the data/<namespace>/jsonpatch directory of your datapack or assets/<namespace>/jsonpatch directory of your resourcepack.

You'll want to begin your patch with a @version meta tag like this. This will let jsonpatcher know that your patch will work with this version. In the future you may be able to select a version in more ways.

@version "1"

Next you'll want to select the files you want to patch. This is done with the @target meta tag. All meta tags follow a json format. You can either select a single file with a string, use an object for broader selections, or use an array for multiple selections. If any selector in the array matches, the patch will apply.

Now you can begin modifying the target file. The patch files use a c-like syntax. You can access the target files contents with $. It can be used like a variable, or you can put the property you want to access directly after it.

For more info on the language, see the wiki.

Modrinth is open source.

feat/theseus/tauri-v2@c5403db

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.