Initially created for the graphics program The GIMP, the GIMP toolkit — abbreviated GTK+ — is now one of the two most popular X widget toolkits for creating graphical user interfaces (the other being Qt). GTK+ and Qt have supplanted Motif, which at one time was the most widely-used X widget toolkit.
GTK+ is written in C, although it is designed within an object-oriented paradigm (unlike C++, C does not support object-orientation natively). The toolkit offers bindings to almost all popular programming languages.
The look of the toolkit is largely configurable by the user, down to offering a number of different display engines. There are engines emulating the look of other popular toolkits or platforms, like Windows 95, Motif, or NEXTSTEP.
The GNOME environment uses GTK+ as a base, which means that programs written for GNOME use GTK+ as their toolkit. GNOME applications are not the only programs using it, though, and any GTK+ program (or GNOME program, for that matter) can run on top of other desktop environments, such as KDE or XFce. The GPE Palmtop Environment is another environment that uses GTK+ as a base.
GTK+ initially contained some utility routines that were not strictly graphics-related, for instance providing such data structures as linked lists and binary trees. This has now been separated into a separate library, Glib, which is regularly used to develop programs that do not have a graphical interface.
GTK+ 2, the successor of GTK+, uses Pango as its text rendering engine.