GTK is the primary library used to construct user interfaces. It provides user interface controls and signal callbacks to respond to user actions.
An intermediate layer which provides a rendering API implemented using Cairo, OpenGL or Vulkan.
An intermediate layer which isolates GTK from the details of the windowing system.
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.
GdkPixbuf is a library for image loading and manipulation.
Cairo is a 2D graphics library with support for multiple output devices. It is designed to produce consistent, high quality output on all media.
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.
GObject provides the object system used by GTK.
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.