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.

GTK API reference

GSK

An intermediate layer which provides a rendering API implemented using Cairo, OpenGL or Vulkan.

GSK API reference

GDK

An intermediate layer which isolates GTK from the details of the windowing system.

GDK API reference

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.

Pango API reference

GdkPixbuf

GdkPixbuf is a library for image loading and manipulation.

GdkPixbuf API reference

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.

Cairo API reference

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.

GLib API reference

GObject

GObject provides the object system used by GTK.

GObject API reference

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.

GIO API reference