Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
A point-and-click menu builder for Paper servers. Design clickable GUIs entirely in-game โ no config files to write โ then wire up what each click does, group menus into categories, and share them as portable YAML. Everything is styled with MiniMessage.
Features
- Design in-game. Build and edit menus through a GUI: set the title, rows, items, names, lore, and click actions without ever opening a file.
- MiniMessage everywhere. Menu titles, item names, lore, and every plugin message are MiniMessage โ gradients and hex colors render exactly as typed.
- Left and right click actions. Each click type runs its own list of actions, with a customizable display label on the item and an optional close-on-click.
- Action types. Run commands as the player, run commands from console, send messages, or Go to Menu to open another GUI. All added through a paginated, click-driven action editor.
- Placeholders. Built-in
%player%plus full PlaceholderAPI support in every action โ including console commands โ resolved against the player who clicked. - Categories. Group menus into accent-colored folders and browse them in a tidy two-level menu.
- Accent colors. Pick one of 16 dye colors per menu or category; the icon and name are tinted to match.
- Custom open commands. Give a menu its own command (e.g.
/shop) that registers live and tab-completes โ no restart, noplugin.ymledits. - Live preview. Open any menu exactly as a player sees it; pressing Esc drops you back into the editor where you left off.
- Import / export. Every menu is a hand-editable
.ymlfile. Share one, drop it in, and reload. - Soft dependency only. PlaceholderAPI is optional; without it
%player%still works and there are no other dependencies.
Commands
Everything runs through /gui (aliases /guis, /menus, /guidesigner):
| Command | Description |
|---|---|
/gui |
Open the designer (the menu browser) |
/gui create <id> |
Create a new menu and open its editor |
/gui edit <id> |
Open the editor for an existing menu |
/gui open <id> |
Open a menu as a player would see it |
/gui delete <id> |
Delete a menu and its file |
/gui export <id> |
Write a shareable copy to /exports |
/gui import <file> [id] |
Load a menu from /imports |
/gui list |
List every menu |
/gui reload |
Reload all menus and categories from disk |
Each menu can also define its own open command in the editor, so players just run /<command> to open it.
Permissions
| Node | Default | Grants |
|---|---|---|
guidesigner.use |
everyone | Open menus that have no specific permission set |
guidesigner.admin |
op | Create, edit, import/export, and delete menus |
Any menu can also set its own open permission in the editor โ a custom node checked before that menu opens, so you can lock individual menus to ranks.
Menus & actions
Menus are designed in-game, but saved as readable YAML you can share or hand-edit. Actions are stored as simple prefixed strings:
| Syntax | Effect |
|---|---|
[player] <command> |
Run a command as the clicking player |
[console] <command> |
Run a command from the console |
[message] <text> |
Send the player a MiniMessage message |
[open] <menu> |
Open another menu (the Go to Menu action) |
[close] |
Close the menu |
Placeholders are expanded against the clicking player before each action runs:
%player%โ the player's name. Works without PlaceholderAPI.- Any
%expansion_token%โ resolved by PlaceholderAPI when installed (e.g.%player_world%,%vault_eco_balance%).
title: "<gradient:#00ffa3:#00b3ff>Shop</gradient>"
rows: 3
open-command: shop
items:
item_0:
slot: 11
material: DIAMOND
name: "<aqua>Buy a Diamond"
left:
label: "Buy now"
close: true
actions:
- "[console] eco take %player% 100"
- "[console] give %player% diamond 1"
- "[message] <green>Purchased!"
right:
label: "Info"
actions:
- "[open] shop_info"
Drop a hand-written menu into plugins/GUIDesigner/menus/ and run /gui reload to load it.
Installation
- Download
GUIDesigner.jar. - Drop it into your server's
plugins/folder. - Restart the server.
- Run
/gui(requiresguidesigner.admin) to start designing. - (Optional) Install PlaceholderAPI for
%..._...%placeholders.
Requires a Paper server, or a Paper-based fork such as Purpur.
Made by Zero Development. Released under the MIT License.


