A general-purpose UI layout tool built on object-oriented principles, exporting to human-readable XML for any platform.
Gum is a general-purpose UI layout tool that uses object-oriented principles to design user interfaces for any platform. It solves the problem of creating flexible, reusable UI components by supporting inheritance, instances, states, and a powerful layout engine, exporting results to human-readable XML for easy integration.
Developers and designers building UI for cross-platform applications, especially in game development with engines like MonoGame, or desktop frameworks like WPF and Avalonia.
Developers choose Gum for its object-oriented approach to UI layout, which enables high reusability and flexibility, along with its platform-agnostic XML output that simplifies integration with various runtimes and frameworks.
Flexible layout tool for creating UI on any platform
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports inheritance and object instances, enabling efficient reuse and extension of UI elements as highlighted in the README's key features.
Exports layouts to human-readable XML, facilitating integration with various game engines and frameworks through available runtimes like MonoGame and WPF.
Includes categorized and uncategorized states for dynamic UI behavior, providing precise control over component variations as described in the features.
Can be extended via MEF or source code modifications, allowing for custom functionality and integrations, as noted in the README.
Requires specific runtimes for each platform (e.g., MonoGame, WPF), which complicates setup and increases project dependencies beyond the core tool.
Smaller user base and fewer third-party resources compared to mainstream UI tools like Unity UI, making troubleshooting and finding examples more difficult.
While XML is human-readable, editing layouts directly in XML might be less intuitive than using visual designers, especially for designers without coding experience.