Your keybinds, everywhere. Save, export and import your Minecraft keybinds so you never set them up by hand again, across every install, instance and modpack.
A client-side Fabric mod for Minecraft 1.20 to 26.2 that replaces the vanilla keybinds screen with something much better.
- Export / Import profiles: one JSON file with every keybind (vanilla and modded).
Copy it to a new install, hit Import, done.
- Binds from mods you don't have installed are skipped safely (and counted), never lost.
- Default save location is your
.minecraftfolder. Configurable, with a native folder picker.
- Pixel-art key buttons: keys render as hand-drawn keycap sprites (
A-Z,F1-F12, arrows,SPACE,SHIFT,CNTRL, mouse buttons and more). Left/right modifiers getL-/R-badges. Keys without a sprite fall back to clean text, with no vanilla button texture. - Conflict detection: colliding keys get a pixel-consistent outline:
- red = same key in the same category (both will fire)
- yellow = same key across different categories (maybe fine, worth a look)
- A warning banner counts every conflict and unbound key; click it to scroll straight to each problem.
- Mod sidebar: every mod that adds keybinds gets an entry with its own icon; click to filter. Vanilla is listed first.
- Search: filter by key name, bound key, category or mod name, live.
- Fancy category names (like "· Movement ·"), change markers on keys changed from default, hover tooltips everywhere (hover reset to see exactly what key it will restore), and a Reset All button with a confirmation dialog.
- ModMenu config screen: toggle any of the above, set the export folder.
- Install the Fabric Loader.
- Install the Fabric API (required).
- Drop
universalkeybinds-<version>.jarinto yourmodsfolder. Done.
ModMenu is optional; the settings screen is also reachable from the gear button inside the keybinds screen.
Works on 1.20 to 1.20.6, 1.21 to 1.21.11 and 26.1 to 26.2. Pick the jar matching your Minecraft version.
# build one version
./gradlew build -Pmcver=1.21.1
# valid targets:
# 1.20.1 1.20.4 1.20.6 1.21.1 1.21.5 1.21.8 1.21.10 26.1.2 26.2Jars land in build/libs/. The whole matrix:
for v in 1.20.1 1.20.4 1.20.6 1.21.1 1.21.5 1.21.8 1.21.10 26.1.2 26.2; do
./gradlew build -Pmcver=$v
doneThe codebase is written against Mojang mappings with a small per-version compat layer in
src/compat/. That is how one source tree spans 1.20 to 26.2.
{
"format": 1,
"exported": "2026-07-31",
"binds": [
{ "id": "key.jump", "category": "key.categories.movement", "mod": "minecraft", "key": "key.keyboard.space" }
]
}Plain JSON: diff it, sync it, put it in your dotfiles.
Dual licensed:
- Code: MIT. Do whatever you like, credit appreciated.
- Assets (icon, keycap sprites and all pixel art): CC BY 4.0.
Free to use and adapt, but if you use them outside this project you must credit
ReimaginedPixel and link back here. Suggested credit line:
Keycap pixel art by ReimaginedPixel (https://github.com/ReimaginedPixel/UniversalKeybinds). Playing with the mod or shipping it unmodified in a modpack needs no extra credit.