Adds a mod menu to view the list of mods you have installed.

Mod Menu lets you view the mods you have installed and, if supported by the mod, enables quick and easy access to the mod's config screens.
Mod Menu also supports some more advanced features, such as translatable mod names and descriptions, support for QuickText formatting in mod descriptions thanks to Patbox's Text Placeholder API, filters library mods out from regular mods, a mod update checker for mods hosted on Modrinth or that provide their own update sources, and deep configuration for all the features we provide.
Mod Menu is currently available for Fabric or Quilt on Minecraft: Java Edition 1.14 or newer.
Mod Menu includes a number of APIs for developers to improve how their mod appears in Mod Menu. These come in the form of language keys, JSON metadata, and even a Java API.
You can translate your mod's name, summary, and description all without touching any Java code. Simply add translation keys in the supported format to any language you'd like.
Translation API Documentation Here's an example of Mod Menu's translations into Pirate Speak. To create your own, simply replace `modmenu` at the end (***NOT*** the one in the beginning) of the translation key with your own mod ID, for example `modmenu.descriptionTranslation.traverse`. `en_pt.json`"modmenu.nameTranslation.modmenu": "Menu o' mods!",
"modmenu.descriptionTranslation.modmenu": "Menu o' mods ye installed matey!",
"modmenu.summaryTranslation.modmenu": "Menu o' mods ye installed matey!"
> The summary translation is redundant here and does not need to be included because it's the same as the description, but it was included to show that you may translate the summary (a short, one-sentence description of the mod) separately from the description, even in English!
There's a number of things you can add just with metadata in your fabric.mod.json.
All of these are added to a custom block in your fabric.mod.json for Mod Menu's metadata. Here's an example usage of many of the features this API provides:
fabric.mod.json
{
...
"custom": {
"modmenu": {
"links": {
"modmenu.discord": "https://discord.gg/jEGF5fb"
},
"badges": [ "library", "deprecated" ],
"parent": {
"id": "example-api",
"name": "Example API",
"description": "Modular example library",
"icon": "assets/example-api-module-v1/parent_icon.png",
"badges": [ "library" ]
},
"update_checker": true
}
}
}
Fabric Metadata API Documentation
#### Badges (`"badges": [ ]`)
While the `Client` badge is added automatically to mods set as client-side only (set `"environment": "client"` in `fabric.mod.json` to do this.), other badges such as the `Library` and `Deprecated` badges require definition here.
Supported values:
- `library` - should be assigned to mods that are purely dependencies for other mods that should not be shown to the user by default unless they toggle them on.
- `deprecated` - should be assigned to mods that exist purely for legacy reasons, such as an old API module or such.
Any others will be ignored, and Mod Menu does not support adding your own badges. You may open an issue [here](https://github.com/TerraformersMC/ModMenu/issues) if you have a compelling use case for a new badge.
#### Links (`"links": { }`)
The `links` object allows mod authors to add custom hyperlinks to the end of their description. If you specify a `sources` contact in the official `fabric.mod.json` metadata, it will also be included in the links section.
Any key in the `links` object will be included in the links section, with the key being used as a translation key. For example, this:
`fabric.mod.json`
"custom": {
"modmenu": {
"links": {
"modmenu.discord": "https://discord.gg/jEGF5fb"
}
}
}
will show as a link with the text "Discord", since "Discord" is the English translation of "modmenu.discord" provided by Mod Menu.
Mod Menu provides several default translations that can be used for links. A full list can be seen in Mod Menu's language file [here](https://github.com/TerraformersMC/ModMenu/blob/-/src/main/resources/assets/modmenu/lang/en_us.json). All default link translation keys take the form `modmenu.`.
You can also provide your own translations if you would like to add custom links. Make sure to use ***your own namespace*** (as opposed to `modmenu`) for any custom keys.
#### Parents (`"parent": "mod_id" or { }`)
Parents are used to display a mod as a child of another one. This is meant to be used for mods divided into different modules. The following element in a `fabric.mod.json` will define the mod as a child of the mod 'flamingo':
`fabric.mod.json`
"custom": {
"modmenu": {
"parent": "flamingo"
}
}
However, if you want to group mods under a parent, but the parent isn't an actual mod, you can do that too. In the example below, a mod is defining metadata for a parent. Make sure that this metadata is included in all of the children that use the fake/dummy parent. This can also be used as a fallback for an optional parent, it will be replace by the mod's real metadata if present.
`fabric.mod.json`
"custom": {
"modmenu": {
"parent": {
"id": "this-mod-isnt-real",
"name": "Fake Mod",
"description": "Do cool stuff with this fake mod",
"icon": "assets/real-mod/fake-mod-icon.png",
"badges": [ "library" ]
}
}
}
Dummy parent mods only support the following metadata:
- `id` (String)
- `name` (String)
- `description` (String)
- `icon` (String)
- `badges` (Array of Strings)
#### Disable update checker (`"update_checker": false`)
By default, Mod Menu's update checker will use the hash of your mod's jar to lookup the latest version on Modrinth. If it finds a matching project, it will check for the latest version that supports your mod loader and Minecraft version, and if it has a different hash from your existing file, it will prompt the user that there is an update available.
You can disable the update checker by setting `update_checker` to false in your Mod Menu metadata like so:
`fabric.mod.json`
"custom": {
"modmenu": {
"update_checker": false
}
}
Since Mod Menu supports Quilt as well, the same APIs in the Fabric Metadata API section are also available for Quilt mods, but the format for custom metadata is slightly different.
Instead of a "modmenu" block inside of a "custom" block, you put the "modmenu" block as an element in the root object. So it should look like:
quilt.mod.json
{
...
"modmenu": {
// Here's where your links, badges, etc. stuff goes
}
}
To use the Java API, you'll need to add Mod Menu as a compile-time dependency in your gradle project. This won't make your mod require Mod Menu, but it'll be present in your environment for you to test with.
build.gradle
// Add the Terraformers maven repo to your repositories block
repositories {
maven {
name = "Terraformers"
url = "https://maven.terraformersmc.com/"
}
}
// Add Mod Menu as a dependency in your environment
dependencies {
// Prior to Minecraft 26.x, use "modImplementation" instead
implementation("com.terraformersmc:modmenu:${project.modmenu_version}")
}
Then, define the version of Mod Menu you're using in your gradle.properties. You can get the latest version number here, but you may need a different version if you're not using the latest Minecraft version. See the versions page for a full list of versions.
gradle.properties
modmenu_version=VERSION_NUMBER_HERE
Java API Documentation ### Getting Started To use the API, implement the ModMenuApi interface on a class and add that as an entry point of type "modmenu" in your `fabric.mod.json` like this: `fabric.mod.json`If you don't want it in your environment for testing but still want to compile against Mod Menu for using the Java API, you can use
modCompileOnlyinstead ofmodImplementation(this will work even if Mod Menu is not updated to the version of Minecraft you're running).
"entrypoints": {
"modmenu": [ "com.example.mod.ExampleModMenuApiImpl" ]
}
### Mod Config Screens
Mods can provide a Screen factory to provide a custom config screen to open with the config button. Implement the `getModConfigScreenFactory` method in your API implementation to do this.
The intended use case for this is for mods to provide their own config screens. The mod id of the config screen is automagically determined by the source mod container that the entrypoint originated from.
### Provided Config Screens
Mods can provide Screen factories to provide a custom config screens to open with the config buttons for other mods as well. Implement the `getProvidedConfigScreenFactories` method in your API implementation for this.
The intended use case for this is for a mod like Cloth Config to provide config screens for mods that use its API.
### Modpack Badges
Mods can give other mods the `Modpack` badge by implementing the `attachModpackBadges` method, such as through the following:
@Override
public void attachModpackBadges(Consumer<String> consumer) {
consumer.accept("modmenu"); // Indicates that 'modmenu' is part of the modpack
}
Note that 'internal' mods such as Minecraft itself and the mod loader cannot be given the modpack badge, as they are not distributed within a typical modpack.
### Static Helper Methods
`ModMenuApi` also offers a few helper methods for mods that want to work with Mod Menu better, like making their own Mods buttons.
#### Creating a Mods screen instance
You can call this method to get an instance of the Mods screen:
Screen createModsScreen(Screen previous)
#### Creating a Mods button `Text`
You can call this method to get the Text that would be displayed on a Mod Menu Mods button:
Text createModsButtonText()
Required
Unsupported
Умови використання, зміни та поширення цього товару.
23.07.2026 · Modrinth
Скриншоти та зображення з оригінальної сторінки Modrinth.






Опубліковані версії та оригінальні файли Modrinth.
23.07.2026 · 1 195 завантаження
09.07.2026 · 873 236 завантаження
09.07.2026 · 340 730 завантаження
09.07.2026 · 429 916 завантаження
08.07.2026 · 85 286 завантаження
22.06.2026 · 923 822 завантаження
18.06.2026 · 377 142 завантаження
14.06.2026 · 746 365 завантаження
13.06.2026 · 1 092 завантаження
29.05.2026 · 14 784 завантаження
09.05.2026 · 14 820 завантаження
09.05.2026 · 2 887 727 завантаження
25.03.2026 · 4 481 855 завантаження
25.03.2026 · 5 506 228 завантаження
25.03.2026 · 519 852 завантаження
25.03.2026 · 404 057 завантаження
25.03.2026 · 188 525 завантаження
25.03.2026 · 659 682 завантаження
25.03.2026 · 47 857 завантаження
25.03.2026 · 2 576 604 завантаження
24.03.2026 · 109 450 завантаження
14.03.2026 · 9 935 завантаження
22.01.2026 · 32 329 завантаження
11.01.2026 · 1 130 165 завантаження
11.01.2026 · 458 059 завантаження
10.01.2026 · 176 302 завантаження
10.01.2026 · 6 136 039 завантаження
10.01.2026 · 4 451 завантаження
24.12.2025 · 11 843 завантаження
24.12.2025 · 905 завантаження
henkelmax23.12.2025 · 441 497 завантаження
ModMenuApi.getModConfigScreenFactory() (thanks rcubedev)22.12.2025 · 1 686 648 завантаження
ModMenuApi.getModConfigScreenFactory() (thanks rcubedev)13.11.2025 · 262 199 завантаження
12.11.2025 · 6 051 601 завантаження
02.10.2025 · 6 938 585 завантаження
30.08.2025 · 2 848 681 завантаження
No Changelog Available
20.06.2025 · 5 015 916 завантаження
No Changelog Available
18.06.2025 · 102 328 завантаження
17.06.2025 · 12 602 завантаження
25.03.2025 · 4 553 612 завантаження
25.03.2025 · 8 485 завантаження
11.03.2025 · 24 971 завантаження
11.03.2025 · 4 169 561 завантаження
12.02.2025 · 4 775 завантаження
12.02.2025 · 884 889 завантаження
21.01.2025 · 770 625 завантаження
06.01.2025 · 365 347 завантаження
03.12.2024 · 673 303 завантаження
03.12.2024 · 473 207 завантаження
14.10.2024 · 492 816 завантаження
14.10.2024 · 18 881 032 завантаження
25.08.2024 · 2 207 675 завантаження
25.08.2024 · 4 842 завантаження
21.06.2024 · 3 156 263 завантаження
18.06.2024 · 213 417 завантаження
18.06.2024 · 1 153 933 завантаження
18.06.2024 · 682 353 завантаження
16.06.2024 · 52 509 завантаження
15.06.2024 · 24 105 завантаження
15.06.2024 · 976 завантаження
14.06.2024 · 70 969 завантаження
No Changelog Available
04.06.2024 · 112 299 завантаження
22.04.2024 · 604 938 завантаження
22.04.2024 · 446 787 завантаження
22.04.2024 · 1 519 завантаження
04.04.2024 · 285 136 завантаження
08.03.2024 · 16 474 завантаження
29.02.2024 · 2 560 завантаження
No Changelog Available
18.12.2023 · 1 093 299 завантаження
18.12.2023 · 613 719 завантаження
29.11.2023 · 72 000 завантаження
17.11.2023 · 2 612 завантаження
No Changelog Available
03.11.2023 · 2 446 завантаження
18.10.2023 · 3 555 завантаження
25.09.2023 · 438 949 завантаження
No Changelog Available
08.09.2023 · 12 978 завантаження
08.09.2023 · 21 076 646 завантаження
08.09.2023 · 478 завантаження
No Changelog Available
18.07.2023 · 539 603 завантаження
18.07.2023 · 985 214 завантаження
18.07.2023 · 85 547 завантаження
18.07.2023 · 2 441 завантаження
18.07.2023 · 7 589 завантаження
17.06.2023 · 493 385 завантаження
08.06.2023 · 70 922 завантаження
08.06.2023 · 709 136 завантаження
07.06.2023 · 55 045 завантаження
No Changelog Available
29.04.2023 · 252 667 завантаження
29.04.2023 · 3 752 завантаження
20.04.2023 · 622 завантаження
20.04.2023 · 56 356 завантаження
18.04.2023 · 36 959 завантаження
18.04.2023 · 12 681 завантаження
16.04.2023 · 8 362 завантаження
No Changelog Available
17.03.2023 · 106 361 завантаження
17.03.2023 · 3 257 завантаження
16.03.2023 · 1 160 завантаження
14.03.2023 · 4 200 завантаження
18.02.2023 · 917 завантаження
18.02.2023 · 84 874 завантаження
18.02.2023 · 1 547 369 завантаження
17.02.2023 · 3 392 завантаження
17.02.2023 · 1 206 завантаження
17.02.2023 · 220 завантаження
17.02.2023 · 361 завантаження
17.02.2023 · 620 завантаження
17.02.2023 · 420 завантаження
17.02.2023 · 164 завантаження
06.02.2023 · 587 завантаження
21.01.2023 · 559 завантаження
10.12.2022 · 81 524 завантаження
08.12.2022 · 614 112 завантаження
08.12.2022 · 554 900 завантаження
08.12.2022 · 443 656 завантаження
08.12.2022 · 9 481 завантаження
08.12.2022 · 792 завантаження
20.11.2022 · 1 030 завантаження
20.11.2022 · 40 980 завантаження
17.11.2022 · 183 завантаження
10.11.2022 · 209 завантаження
04.11.2022 · 216 завантаження
04.11.2022 · 22 910 завантаження
03.11.2022 · 20 482 завантаження
03.11.2022 · 1 596 завантаження
17.10.2022 · 13 566 завантаження
07.09.2022 · 32 055 завантаження
06.08.2022 · 116 322 завантаження
27.07.2022 · 30 108 завантаження
13.07.2022 · 698 824 завантаження
12.07.2022 · 2 335 завантаження
04.07.2022 · 752 завантаження
27.06.2022 · 963 завантаження
27.06.2022 · 131 311 завантаження
27.06.2022 · 3 732 завантаження
27.06.2022 · 686 688 завантаження
07.06.2022 · 54 222 завантаження
13.05.2022 · 101 468 завантаження
25.04.2022 · 5 751 завантаження
21.04.2022 · 847 завантаження
21.04.2022 · 201 завантаження
16.04.2022 · 318 завантаження
11.04.2022 · 5 141 завантаження
01.03.2022 · 15 103 завантаження
18.12.2021 · 58 234 завантаження
03.10.2021 · 7 960 завантаження
com.terraformersmc.modmenu.api.ModMenuApi nowmodmenu container custom value now03.10.2021 · 10 323 завантаження
03.10.2021 · 12 428 завантаження
27.09.2021 · 899 завантаження
26.09.2021 · 421 завантаження
com.terraformersmc.modmenu.api.ModMenuApi nowmodmenu container custom value now26.09.2021 · 1 043 завантаження
26.09.2021 · 907 завантаження
21.09.2021 · 259 завантаження
No Changelog Available
21.09.2021 · 659 завантаження
21.09.2021 · 499 завантаження
17.09.2021 · 843 завантаження
17.09.2021 · 374 завантаження
06.09.2021 · 1 135 завантаження
06.09.2021 · 534 завантаження
02.09.2021 · 676 завантаження
02.09.2021 · 382 завантаження
01.09.2021 · 321 завантаження
01.09.2021 · 244 завантаження
30.08.2021 · 1 143 завантаження
30.08.2021 · 488 завантаження
27.08.2021 · 727 завантаження
27.08.2021 · 372 завантаження
19.08.2021 · 1 081 завантаження
19.08.2021 · 402 завантаження
25.07.2021 · 2 504 завантаження
25.07.2021 · 783 завантаження
20.07.2021 · 938 завантаження
No Changelog Available
20.07.2021 · 483 завантаження
12.06.2021 · 2 767 завантаження
31.05.2021 · 521 завантаження
29.05.2021 · 226 завантаження
No Changelog Available
10.04.2021 · 935 завантаження
10.04.2021 · 302 завантаження
08.04.2021 · 185 завантаження
08.04.2021 · 2 842 завантаження
20.02.2021 · 1 416 завантаження
11.02.2021 · 379 завантаження
11.02.2021 · 377 завантаження
11.02.2021 · 839 завантаження
05.02.2021 · 440 завантаження
03.02.2021 · 5 547 завантаження
03.02.2021 · 626 завантаження
02.02.2021 · 773 завантаження
02.02.2021 · 528 завантаження
01.02.2021 · 825 завантаження
01.02.2021 · 535 завантаження
01.02.2021 · 15 272 завантаження
23.01.2021 · 8 036 завантаження