GTK Documentation
User interface
GTK
GTK is the primary library used to construct user interfaces. It provides user interface controls and signal callbacks to respond to user actions.
GSK
An intermediate layer which provides a rendering API implemented using Cairo, OpenGL or Vulkan.
GDK
An intermediate layer which isolates GTK from the details of the windowing system.
Pango
Pango is the core text and font handling library used in GTK applications. It has extensive support for the different writing systems used throughout the world.
Cairo
Cairo is a 2D graphics library with support for multiple output devices. It is designed to produce consistent, high quality output on all media.
Core libraries
GLib
GLib provides the core application building blocks for libraries and applications written in C. It provides common data types used in GTK, the main loop implementation, and a large set of utility functions for strings and general portability across different platforms.
GIO
GIO provides a portable, modern and easy-to-use file system abstraction API for accessing local and remote files; a set of low and high level abstractions over the DBus IPC specification; an application settings API; portable networking abstractions; and additional utilities for writing asynchronous operations without blocking the user interface of your application.
GIRepository
GIRepository provides access to introspected API bindings built using gobject-introspection.