gt is a Go library providing a simple framework for constructing Terminal UI
(TUI) applications.
-
Intuitive interface that does NOT use the Elm Architecture
gtwas borne out of frustration using the Bubbletea library, which uses the Elm Architecture. Its use in UI frameworks like Bubbletea and React is lauded as an approach to cleanly separate and manage state in client-side applications, but I personally find it overly complicated and obtuse, difficult to debug and impossible to explain. -
Well-documented code and plenty of example code
The code itself should be well-documented with lots of usage examples.
-
Interfaces should be consistent across modules
Each module in the library should be structured in a consistent fashion, and the structs returned by various library functions should have consistent attribute and method names.