Open Tool Kit (Otk) is a portable widget library for making graphical user interfaces for C programs. It emphasizes simplicity for the application programmer without eliminating capability. Based on OpenGL, Otk supports Linux, Unix, and other OSs neutrally and efficiently. It is simple and compact, and it strives for easy compilation and linking to other applications. In seeking to address several issues associated with earlier graphics APIs, Otk explores some interesting methods, such as window-relative layout instead of pixel-based layout.
Wt is a C++ library for developing Web applications with an API that is widget-centric and inspired by existing C++ graphical user interface APIs. To the developer, it offers abstraction of Web-specific implementation details, increasing the accessibility and portability. Under the hood, the library uses the latest techniques (HTML5, Ajax, WebSockets) to handle user events and update the Web page.
The Ecere SDK is a cross-platform toolkit for building software applications. It currently runs on Windows, Linux, Mac OS X (through X11), FreeBSD, and the Android OS. It should run on other Unix platforms with minor testing/tweaking. With the Ecere SDK, you can develop applications once and deploy them on all supported platforms alongside a lightweight runtime environment. It introduces eC, an object oriented language derived from and fully compatible with C, compromising neither runtime performance nor ease of use. A built-in 3D engine supporting both Direct3D and OpenGL is fully integrated.
GTK, which stands for the Gimp ToolKit, is a library for creating graphical user interfaces. It is designed to be small and efficient, but still flexible enough to allow the programmer freedom in the interfaces created. GTK provides some unique features over standard widget libraries.
Tcl provides a portable scripting environment for Unix, Windows, and Macintosh that supports string processing and pattern matching, native file system access, shell-like control over other programs, TCP/IP networking, timers, and event-driven I/O. Tcl has traditional programming constructs like variables, loops, procedures, namespaces, error handling, script packages, and dynamic loading of DLLs. Tk provides portable GUIs on UNIX, Windows, and Macintosh. A powerful widget set and the concise scripting interface to Tk make it a breeze to develop sophisticated user interfaces.
Urwid is a Python library for making text console applications. It has many features including fluid interface resizing, support for UTF-8 and CJK encodings, standard and custom text layout modes, simple markup for setting text attributes, and a powerful, dynamic list box that handles a mix of widget types. It is flexible, modular, and leaves the developer in control.