Skip to content

Bento GUI

The expressive GUI library from Bento Box

Fabric
Loaders
Fabric
Downloads on Modrinth
104
Followers on Modrinth
0
version
1
Updated
March 30, 2026Mar 30
Published
in 2026
This is a library — other mods need it, and it adds nothing to the game by itself

At a glance

A library: other mods need it
Runs on Fabric
For Minecraft 1.21–1.21.1
Client only — no need to install it on the server
Latest version — 0.1.0+1.21 from March 30, 2026
Requires Fabric API
Where it's needed
In gamerequiredOn servernot needed

Install in the game only; not needed on the server

Game versions1.21–1.21.1

Bento GUI

Bento GUI is an expressive GUI library that makes building dynamic screens fast and easy. It is a replacement for Minecraft’s UI widgets that is inspired by HTML and CSS.

Features:

Bento GUI is documented in-code with JavaDocs and on my wiki.

@Environment(EnvType.CLIENT)
public class MyScreen extends Screen {
   public MyScreen() {
      super(Text.literal("My Screen"));
   }

   @Override
   protected void init() {
      Window window = client.getWindow();
      int width = window.getScaledWidth();
      int height = window.getScaledHeight();

      // The root panel that will contain everything
      Panel root = Panel.builder()
         .dimensions(width, height)
         .spacing(1)
         .build();

      // Add elements to root
      Label title = Label.builder()
         .text(Text.literal("My Screen"))
         .dimensions(true, 32)
         .build();
      ScrollPanel body = ScrollPanel.ofMenu()
         .dimensions(true, true)
         .alignCenter()
         .padding(10, 0)
         .spacing(10)
         .build();
      Panel footer = Panel.builder()
         .dimensions(true, 32)
         .alignCenter()
         .alignMiddle()
         .padding(20, 0)
         .spacing(8)
         .flowAxis(FlowAxis.HORIZONTAL)
         .build();

      root.addChild(title);
      root.addChild(body);
      root.addChild(footer);

      // Add elements to footer
      TextField<String> searchField = TextField.ofString()
         .placeholder(Text.literal("Search..."))
         .width(true)
         .maxWidth(200)
         .build();
      Button doneButton = Button.builder()
         .text(Text.literal("Done"))
         .onPress(self -> close())
         .build();

      footer.addChild(searchField);
      footer.addChild(doneButton);

      // Add root as drawable child
      addDrawableChild(root);
   }
}

FAQ

How to install Bento GUI?

Install Fabric for your Minecraft version, download Bento GUI for the same version and loader, put the file into the mods folder and launch the game with the loader profile.

Which Minecraft versions does Bento GUI support?

Bento GUI has builds for Minecraft 1.21–1.21.1.

Is Bento GUI needed on the server?

Client only — no need to install it on the server

License and source
GNU Lesser General Public License v3.0 onlyfree to use and share; changes to the mod itself must be published under the same license
Original — Modrinth↗Files unchanged, verified with SHA-512Is this your mod? For rights holders

The site uses cookies: the necessary ones for sign-in and the theme, plus the Yandex Metrica and LiveInternet visit counters — they show us how the site is used. We have no advertising cookies. More