ZMenu
A plugin that will allow the creation of menu for minecraft, has a complete API for developers
Install / Use
/learn @Maxlego08/ZMenuREADME
zMenu
zMenu is a powerful Minecraft plugin for creating custom inventory GUIs through YAML configuration files. No coding required for server admins, while developers get a complete API for integration.



Features
- YAML Configuration - Create menus without coding
- 30+ Item Components - Full support for Minecraft 1.20.5+ item system
- Animated Titles - Dynamic inventory titles (requires PacketEvents)
- Pattern System - Reusable layouts and button templates
- Actions & Requirements - 40+ actions, conditional logic, click handlers
- PlaceholderAPI - Full placeholder support with local overrides
- Multi-platform - Spigot, Paper, and Folia support
- 22+ Plugin Hooks - ItemsAdder, Oraxen, LuckPerms, Vault, MythicMobs, and more
Links
| Resource | Link | |----------|------| | Download | Modrinth | | Documentation | docs.groupez.dev | | JavaDocs | API Reference | | Discord | discord.groupez.dev | | Inventory Builder | minecraft-inventory-builder.com |
Quick Start
- Download zMenu from Modrinth
- Place the JAR in your
plugins/folder - Restart your server
- Edit files in
plugins/zMenu/inventories/ - Use
/zm reloadto apply changes
Example Inventory
size: 27
name: "&6My Menu"
items:
example:
slot: 13
item:
material: DIAMOND
name: "&bClick me!"
lore:
- "&7This is an example button"
click_requirement:
left_click:
clicks: [LEFT, SHIFT_LEFT]
success:
- type: message
messages:
- "&aYou clicked the button!"
API Usage
Maven
<repository>
<id>groupez</id>
<url>https://repo.groupez.dev/releases</url>
</repository>
<dependency>
<groupId>fr.maxlego08.menu</groupId>
<artifactId>zmenu-api</artifactId>
<version>1.1.1.2</version>
<scope>provided</scope>
</dependency>
Gradle
repositories {
maven("https://repo.groupez.dev/releases")
}
dependencies {
compileOnly("fr.maxlego08.menu:zmenu-api:1.1.1.2")
}
Opening an inventory
InventoryManager manager = plugin.getServer().getServicesManager()
.getRegistration(InventoryManager.class).getProvider();
manager.openInventory(player, "zmenu:example");
Supported Plugins
<details> <summary>Click to expand</summary>- ItemsAdder
- Oraxen
- Nexo
- Nova
- SlimeFun
- ExecutableItems
- ExecutableBlocks
- HeadDatabase
- zHead
- zItems
- MythicMobs
- LuckPerms
- Vault
- PlaceholderAPI
- PacketEvents
- Jobs
- Shopkeepers
- MagicCosmetics
- HMCCosmetics
- BreweryX
- CraftEngine
- Eco
Sponsors
License
This project is licensed under the MIT License.
Related Skills
gh-issues
352.0kFetch GitHub issues, spawn sub-agents to implement fixes and open PRs, then monitor and address PR review comments. Usage: /gh-issues [owner/repo] [--label bug] [--limit 5] [--milestone v1.0] [--assignee @me] [--fork user/repo] [--watch] [--interval 5] [--reviews-only] [--cron] [--dry-run] [--model glm-5] [--notify-channel -1002381931352]
node-connect
352.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
oracle
352.0kBest practices for using the oracle CLI (prompt + file bundling, engines, sessions, and file attachment patterns).
taskflow-inbox-triage
352.0kname: taskflow-inbox-triage description: Example TaskFlow authoring pattern for inbox triage. Use when messages need different treatment based on intent, with some routes notifying immediately, some w
