ui is a Go package for creating platform-native desktop interfaces through the underlying libui C library. It exposes Go-friendly abstractions for windows, buttons, boxes, tables, menus, drawing areas, text fields, and other controls. Applications use native Windows controls, macOS interfaces, or GTK widgets depending on the operating system. The package relies on cgo and supports Windows, macOS, and Unix-like systems with GTK 3. Example programs demonstrate the available controls and application structure. A Windows manifest helper simplifies enabling modern Common Controls support in compiled binaries. Like libui itself, the project is mid-alpha and should be treated as experimental rather than a fully mature GUI toolkit.
Features
- Native desktop widgets from Go
- Windows, macOS, and GTK support
- Buttons, forms, menus, tables, and drawing areas
- cgo-based libui integration
- Windows manifest helper
- Example GUI applications