Announcing etk - Ebitengine tool kit for creating graphical user interfaces

etk is a library for the Ebitengine game engine that simplifies creating graphical user interfaces. Boxcars uses etk to greatly simplify UI development, as its single codebase targets web, desktop and Android.

Features:

  • Simplifies GUI development:
    • Propagates layout changes.
    • Propagates user input.
    • Propagates focus.
  • Extensible by design:
    • The Box widget is provided as a building block for custom widgets.
    • Widgets may be nested within each other efficiently.
  • Tools in the kit:
    • Box: Building block for creating custom widgets.
    • Button: Clickable button.
    • Flex: Flexible stack-based layout. Each Flex widget may be oriented horizontally or vertically.
    • Frame: Widget container. All child widgets are displayed at once. Child widgets are not repositioned by default.
    • Grid: Highly customizable cell-based layout. Each widget added to the Grid may span multiple cells.
    • Input: Text input widget. The Input widget is simply a Text widget that also accepts user input.
    • List: List of widgets as selectable items.
    • Text: Text display widget.
    • Window: Widget paging mechanism. Only one widget added to a window is displayed at a time.
1 Like