Menu Basics
EasyMenu allows you to create custom interactive Minecraft menus easily using intuitive YAML files.
This page guides you step-by-step from a minimal, working menu to adding titles, sizes, items, commands, and submenus.
1. Minimal Menu Configuration
The simplest valid EasyMenu configuration requires only a few lines:
menu-title: "&6Shop"
menu-items:
- slot: 13
material: DIAMOND
name: "&bDiamond"
command: "shop buy diamond"
This generates a full menu screen with a single diamond in the center that runs a command when clicked.
2. Step 1: Change the Title
Set the title displayed at the top of the menu with menu-title. Standard Minecraft color codes (&a–&f, &l, etc.) are fully supported:
menu-title: "&8[&6EasyMenu&8] &eMain Lobby"
3. Step 2: Change Menu Size
Change the number of slots in the inventory GUI using menu-size. Must be a multiple of 9 (9, 18, 27, 36, 45, 54):
# 3-row (27 slots) menu
menu-size: 27
menu-size | Rows | Common Use Cases |
|---|---|---|
9 | 1 row | Quick selection bar |
27 | 3 rows | Compact shops, warp lists |
54 (default) | 6 rows | Large main menus, multifunctional hubs |
4. Step 3: Add & Position Items
Add interactive elements inside the menu-items: list.
Slot indexes (slot) start at 0 in the top-left corner. For a 27-slot menu, slots range from 0 to 26:
menu-items:
# Slot 11 (left side): Compass
- slot: 11
material: COMPASS
name: "&aGo to Spawn"
lore:
- "&7Click to teleport to spawn"
command: "/spawn"
# Slot 15 (right side): Diamond
- slot: 15
material: DIAMOND
name: "&bOpen Shop"
lore:
- "&7Open the item shop menu"
command: "sub_shop"
material: Minecraft Material name.name: Display name of the item.lore: List of lore lines displayed when hovering over the item.
5. Step 4: Configure Click Commands
Specify the command to execute when a player clicks the item using command:
command: "/spawn" # With leading slash
command: "give {player} diamond 1" # Without slash & using {player} variable
{player} is automatically replaced with the username of the clicking player.
6. Step 5: Switch to Submenus
To open another submenu screen (e.g. shop or warp list), simply specify command: "sub_<menu_name>":
# Opens plugins/EasyMenu/sub/shop.yml
command: "sub_shop"
To return to the main menu from any submenu, specify command: "main_mainopen":
# Returns to main menu
command: "main_mainopen"
7. Add Background Fillers & Sounds
Polishing your menu with glass pane backgrounds and open sounds makes your interface feel complete:
menu-title: "&6&lServer Menu"
menu-size: 27
# Fill empty slots with gray glass panes
menu-background-item: "GRAY_STAINED_GLASS_PANE"
# Sound played when menu opens
menu-opensound: "BLOCK_CHEST_OPEN"
menu-items:
- slot: 13
material: DIAMOND
name: "&bBuy Diamond"
sound: "ENTITY_EXPERIENCE_ORB_PICKUP" # Sound played on click
close-menu: true # Close menu after clicking
command: "shop buy diamond"
After saving your file, run /menu reload in-game to apply your changes immediately!
Next Steps
Once comfortable with the basics, explore advanced features: