Features:
- Custom scripting language inspired by CSS
- Build fully working in-game GUI screens
- Draggable and scrollable elements
- Event callbacks through CallbackListener classes
- Script events such as on-click handlers
- Config keys that save slider and checkbox values
- Helper methods to collect elements by ID, class or z-index order
- API to parse, run and reload UI scripts
- Developer library that requires basic CSS, HTML and Java knowledge
- Fabric support
- For Minecraft 1.21.6
- Made by ItziSpyder
ImproperUI aims to make Minecraft rendering much easier to learn by replacing hand-written drawing code with a dedicated scripting language. Its syntax borrows heavily from CSS, although it is not identical, and it lets developers describe complete, interactive in-game screens. The mod’s own home page, with draggable and scrollable elements, is built entirely with ImproperUI Script.
This is a library for mod developers rather than a gameplay mod, so a basic understanding of CSS properties, HTML structure and Java is expected. A mod registers its UI script files once during initialization and then refers to them by file name when parsing or opening a screen.
Interactivity comes from events declared in the script, such as an on-click entry, which call matching methods in a callback listener class. Config keys made of a mod ID, a config file and a property name can be attached to elements like sliders and checkboxes so their values are saved automatically. Helper methods collect elements by ID, class attribute or z-index order, and the API can parse scripts, open screens directly, reload or re-initialize itself.