List of GUI libraries
List of GUI toolkits and graphics libraries .
Language specific libraries
C.
Toolkit |
oldest known publication |
most recent known publication |
Ties | Platforms | GUI builder | License | Remarks |
Allegro | 1995 | Version 5.1.12 Sep. 2015 |
Ada, C ++, C #, Common Lisp, D, Lua, Go, Mercury, Pascal, Perl, Python, Scheme | Windows , X11 , macOS , iOS | zlib license | Games library with its own rudimentary GUI elements | |
Xaw (Athena Widgets) | 1983 | Version X11R7.7 Jun. 2012 |
X11 | individual free license similar to MIT without copyleft | renders with Xlib and Xt , various post-implementations with specific advantages are e.g. B. listed here | ||
CDE (Common Desktop Environment) | 1993 | Version 2.2.3 May. 2015 |
X11 | LGPL since Aug. 2012 | renders with Xm | ||
Cpw | Version 1.0 Beta Feb. 2002 |
all on which OpenGL is available | Lua | Toolkit for OpenGL , comparable to GLUT , FreeGLUT or OpenGLUT | |||
Clutter | 2006 | Version 1.6.0 Sep. 2015 |
C ++, C #, Perl, Python, Ruby, Vala | all on which OpenGL is available | LGPL | Scene graph program library for OpenGL | |
FreeGLUT | 1999 | Version 3.0.0 Mar 2015 |
all on which OpenGL is available | individual free license | X Consortium | Toolkit for OpenGL , see also Cpw , GLUT or OpenGLUT | |
Geeonx | Version 0.99 February 2020 |
C. | Linux , macOS , Windows | GeeonxCreator | proprietary | renders with SDL | |
GLFW | Version 3.3.2 Jan. 2020 |
Ada, C #, Common Lisp, Crystal, D, Dart, Delphi, Duktape, Go, Harbor, Haskell, Java, Julia, LuaJIT, Nimrod, Node.js, OCaml, Perl, Python, Rebol, Red, Ruby, Rust, Scheme | Windows , X11 | zlib | Toolkit for OpenGL | ||
GLUT (OpenGL Utility Toolkit) | Version 3.7 Dec. 1998 |
all on which OpenGL is available | proprietary | Toolkit for OpenGL , see also Cpw , FreeGLUT or OpenGLUT | |||
GTK + | 1997 | Version 3.18.1 Oct. 2015 |
Ada, C ++, C #, D, Fortran, FreeBasic, Go, Haskell, Java, JavaScript, Lua, OCam, Perl, PHP, Python, R, Ruby and others via GTK server | Windows , X11 , macOS | Glade | LGPL | renders with Cairo and Pango or OpenGL |
Motif / LessTif | 1980s | V. 2.3.4 May 2009 / V. 0.95.2 Oct. 2012 |
X11 | BX Pro | LGPL (from version 2.3.4) / LGPL | renders with Xlib and Xt | |
OpenGLUT | Version 0.6.3 Mar 2005 |
all on which OpenGL is available | individual free license similar to MIT without copyleft | Toolkit for OpenGL , see also Cpw , FreeGLUT or GLUT | |||
Open Look ( OpenWindows , OLIT, XView) | late 1980s |
open source V. 1.0 Jun. 2005 |
X11 | BSD | renders with Xlib and Xt , 1993 in favor of the CDE abandoned | ||
XForms | 1995 | Version 1.2.4 Jun. 2014 |
X11 , macOS (, Windows , OS / 2 ) | fdesgin | LGPL (from version 1.0.0, 2002) | renders with Xlib | |
SDL (Simple DirectMedia Layer) | 1999 | Version 2.0.3 Mar. 2014 |
Ada, C #, Lua, OCaml, Pascal, Python | Windows , Mac OS , macOS , Android , unofficially many more | LGPL (zlib from version 2.0) | renders with DirectX , OpenGL , Xlib with framebuffer, EGL or others | |
GraphApp | Version 3.64 Nov 2010 |
Windows , macOS | individual free license with copyleft |
C ++
- BCG - Business Components Gallery ( bcgsoft.com has been partially included as an MFC extension in Visual Studio since VC2008)
- CEGUI
- Crazy Eddie's GUI
- Disco (library)
- FLTK
- FOX toolkit
- GLOW Toolkit
- GLT
- GLUI
- Game Gui
- gtkmm (formerly GTK--)
- Guiliani ( guiliani.de platform-independent proprietary library from TES Electronic Solutions , developed for use on embedded systems)
- JUCE ( juce.com GUI library based on OpenGL rendering)
- MyGUI
- Nana C ++ GUI Library (last version 1.6.2 from Aug. 2018)
- NoesisGUI a XAML based multi-platform games UI that is well suited for developing a professional GUI
- NUI (formerly NGL, last version from Nov. 2014)
- Qt , commercially and as open source ( GPL , LGPL ) available under Unix and Linux (with X11 or Wayland ), MS Windows (desktop, CE and Phone 8), OS X, iOS, Android, BlackBerry 10 and embedded Linux; is used in the KDE , Trinity , LXQt and Lumina desktop environment, is also used in Ubuntu's Unity shell
- SFML
- SmartWin ++
- TGUI (Texus' Graphical User Interface, based on SFML )
- U ++ (Ultimate ++), a free Win32 / X11 application framework combined with an IDE ( BSD license )
- µGFX
- Visual Component Framework
- Wt (Web Toolkit)
- Win32 ++ is an open source (literally identical to the MIT license ) C ++ framework project.
- Windows Forms (part of the .NET Framework )
- wxWidgets (formerly wxWindows), Open Source (loose LGPL ), for C ++, abstracts toolkits across multiple platforms, Python , Perl , Ruby and Haskell .
D.
Fortran
- X / Winteracter commercial, for Windows, Linux and Mac OS X (only for F9x compilers, the older version suitable for F77 compilers is called Interacter )
- GINO commercial, for Windows (9x / NT / 2000 / XP), Linux, Solaris (SPARC, x86 (_64)), HP-UX and OpenVMS
- pilib (Platform Independent Library for Fortran 90/95): portable library for creating GUIs, for binary file access etc. (published under the GNU LGPL ).
- JAPI A cross-platform and cross-language extension for graphical user interfaces.
FreeBasic
- GTK (Code Sketcher GladeToBac )
- wx-c ( wxWidgets )
- FLTK ( FLTK C for FreeBASIC )
Java
.NET CLI
Toolkit |
oldest known publication |
most recent known publication |
Ties | Platforms | GUI builder | License | Remarks |
ETO.Forms | Jun. 2011 | 2.4.1
Feb 2018 |
Windows , X11 , macOS , iOS , Android , Windows 8.x / Windows Phone | BSD-3 | Facade for ♦ Windows Forms (based on GDI / GDI + or Direct2D ) and WPF in .NET under Windows, ♦ GTK # (Gtk2 and Gtk3) in MONO under X11, ♦ Aqua / Cocoa (based on MonoMac 32 bit, MonoMac 64 bit or Xamarin.Mac) in MONO under OS X , ♦ iOS in MONO , ♦ Android in MONO (Oct. 2017 still under development) and ♦ Windows 8.x / Windows Phone in .NET under WinRT (Oct. 2017 still under development ) | ||
GTK # (Mono and .NET language binding for GTK + ) | |||||||
NoesisGUI (Mono and .NET language binding for NoesisGUI) | Version 2.1.0 March 2018 |
Windows , X11 , iOS , iOS , Android , UWP | Blend | Noesis Technologies | Free license INDIE for developers with gross sales <€ 100,000 per year, renders with Direct3D , OpenGL , UE4 or Unity , actually a XAML based multi-platform game UI, which is well suited for the development of a professional GUI | ||
Qyoto (.NET language binding for Qt , obsolete) | |||||||
QtSharp (Mono / .NET language binding for Qt ) | |||||||
Windows Forms for .NET |
.NET 1.0 Feb. 2002 |
.NET 4.5 Jul. 2015 |
Windows | Visual Studio , SharpDevelop | Microsoft | Part of the .NET Framework since .NET Framework 1.0, is no longer developed but maintained, renders via System.Drawing with GDI and GDI + | |
Windows Forms for MONO |
MONO 1.0 Jun. 2004 |
MONO 4.0.2 Jun. 2015 |
Windows , X11 , macOS | open source | since MONO 1.0 part of the MONO framework, is no longer developed but maintained, renders via System.Drawing with Xlib for X11 or Win32 for Windows | ||
WPF (Windows Presentation Foundation) | 2006 |
.NET 4.5 Jul. 2015 |
Windows | Visual Studio , SharpDevelop , Microsoft Expression | Microsoft | since .NET Framework 3.0 part of the .NET framework, renders with DirectX or Direct3D | |
XrwXAML ( X11 WPF clone) | Version 0.7 Dec. 2014 |
Version 0.9 Oct 2015 |
X11 | open source | renders with Xrw | ||
wx.net (.NET CLI language binding for wxWidgets ) | |||||||
Xrw ( X11 Roma Widget Set) | Version 0.1 Jan. 2014 |
Version 0.9 Oct 2015 |
X11 | open source | renders with Xlib |
Pascal
- LCL ( Lazarus component library, generates native code via widget sets )
Pearl
- Perl / Tk (binding for Tk )
- Win32 (library for Windows API)
- WxPerl (binding for WxWidgets )
- perl-Gtk3 (binding for GTK + 3)
- Prima (binding for Prima Tk)
- Perl / Qt (bindings for Qt )
PHP
python
- wxPython ( wrapper of the wxWidgets toolkit)
- PyGTK (wrapper of the GTK written in C )
- PyQt ( Qt for Python )
- PySide (Nokia's own Qt bindings for Python )
- PyFLTK (wrapper of the FLTK library)
- Kivy
- Tkinter (wrapper of the Tk toolkit )
Ruby
Tcl
Libraries for POSIX systems
( Unix , unixoide and other POSIX systems, e.g. Solaris, BSD or GNU / Linux)
- Motif ( X Window System )
- KDELibs (extension of the Qt library )
Libraries for Microsoft Windows
- Windows API
- MFC Microsoft Foundation Classes
- ATL Active Template Library
- WTL Windows Template Library
- VCL Visual Component Library (developed by Borland)
- CLX Component Library for Cross Platform Development (also for Linux)
- Windows Forms ( .NET )
- WPF Windows Presentation Foundation .NET 3.0
- Xtreme Toolkit commercial
Libraries for OS X and Mac OS
- the Cocoa Application Kit , which u. a. in addition to the Cocoa Foundation Library is part of the Cocoa API and represents the preferred technology ( Aqua )
- the ColorSync Manager (see ColorSync ) from the Application Services Framework or Quartz 2D ( macOS )
- the carbon HIToolbox ( Mac OS )
- QuickDraw ( Mac OS , GS / OS ) ("legacy"; i.e. use for Mac OS X applications is not recommended)
Libraries for Amiga
- intuition.library, later gadtools.library (the Amiga Workbench is based on this library)
- BOOPSI (object-oriented interface to intuition.library)
- EasyObject (Maxon compiler system)
- StormWIZARD (GUI editor, now public domain )
- Reaction (formerly ClassAct , extension of BOOPSI with ReActor as GUI designer, AmigaOS )
- MUI (MagicUserInterface - extension of the intuition.library, especially with MorphOS for Ambient, as "Zune" with AROS )
- feelin (open source)
Others
- GNUstep (cross-platform implementation of the Cocoa / OpenStep API)
- GEM (including Atari and DOS)
- GEOS ("Graphic Environment Object System"), a family of user interfaces for C64 / 128, Apple II, PDAs and smartphones, as well as x86 computers
- CTK ( Contiki Toolkit)
- S60 is a user interface for smartphones developed by Nokia that is based on Symbian OS
Exotic user interfaces
In addition to the classic GUIs, there have always been new and unusual approaches. Here are a few of those exotics and pioneers:
- N / JOY
- Magic Cap, an operating system for small, portable devices. Magic Cap uses the metaphor of a room, but extends it. You can leave the “rooms” and go onto the “street”. Services from other companies (e.g. AOL ) appear as buildings.
- Carrot, a GUI for DOS, here too the surfaces are divided into rooms and the programs are objects in them.
- Microsoft Bob
See also
Web links
- The GUI Gallery
- The GUI Toolkit, Framework Page - Extensive list of GUI toolkits
- Overview of the technological approaches for the provision of cross-platform .NET command line GUI libraries
Individual evidence
- ↑ a b c d FreeGLUT website . Retrieved May 9, 2020. and FreeGLUT project page . Retrieved May 9, 2020.
- ↑ a b c d OpenGLUT website . Retrieved May 9, 2020.
- ↑ GLFW website . Retrieved May 9, 2020.
-
↑ David Nash: Win32 ++ website . Retrieved May 10, 2020.
David Nash: Win32 ++ project page . January 12, 2007. Accessed May 10, 2020.