Modules in the GNOME developer platform make strict guarantees about API and ABI stability. Applications developed against platform modules can be assured of running unmodified for the duration of the GNOME 2 lifecycle.
GConf provides the daemon and libraries for storing and retrieving configuration data. GConf is discussed in Section 3.3 ― Configuration and Lockdown.
ORBit is a fast and lightweight CORBA server. GNOME's component architecture, Bonobo, is built on top of CORBA. CORBA is discussed in Section 4.3 ― Bonobo and CORBA.
ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications. Using the ATK interfaces, accessibility tools have full access to view and control running applications. ATK is discussed in Section 3.5 ― Accessibility.
GAIL provides an implementation of the ATK interfaces for GTK+ and GNOME libraries, allowing accessibility tools to interact with applications written using these libraries. Accessibility is discussed in Section 3.5 ― Accessibility.
A part of GLib, the GIO library provides a high-level API for accessing files and folders. Together with the GVFS library, it provides a file system abstraction that allows transparent access to local and remote files. GIO is discussed in Section 3.2 ― Virtual File System.
GLib provides the core application building blocks for libraries and applications written in C. It provides the core object system used in GNOME, the main loop implementation, and a large set of utility functions for strings and common data structures.
GnomeVFS is a deprecated library for accessing files and folders. It is superseded by GIO and GVFS. Newly written code should use GIO instead.
GTK+ is the primary library used to construct user interfaces in GNOME applications. It provides user interface controls and signal callbacks to control user interfaces. GTK+ is discussed in Section 3.1.1 ― GTK+.
GVFS provides a backend implementation for GIO, allowing access to numerous protocols with the GIO API. Developers do not access GVFS directly. Instead, applications written with GIO will automatically use GVFS on systems where it is enabled.
libIDL is a library for parsing Interface Definition Language (IDL) files, which are necessary for CORBA interfaces. libIDL is used by GNOME's CORBA implementation, ORBit. CORBA is discussed in Section 4.3 ― Bonobo and CORBA.
libart is a graphics library which can render vector paths. It is used by the GnomeCanvas widget.
Bonobo is a framework for creating reusable components for use in GNOME applications, built on top of CORBA. Bonobo is discussed in Section 4.3 ― Bonobo and CORBA.
The Bonobo UI library provides a number of user interface controls using the Bonobo component framework. Bonobo is discussed in Section 4.3 ― Bonobo and CORBA.
Libglade is a library for constructing user interfaces dynamically from XML descriptions. Libglade allow programmers to construct their user interfaces using a graphical interface builder application, and then import those interface definitions. Libglade is discussed in Section 3.1.2 ― Libglade.
The libgnome library provides a number of useful routines for building modern applications, including session management, activation of files and URIs, and displaying help.
The GnomeCanvas widget provides a flexible widget for creating iteractive structrued graphics.
The libgnomeui library provides additional widgets for applications. Many of the widgets from libgnomeui have already been ported to GTK+.
The libxml2 library provides a number of APIs for working with XML in a standards-compliant manner. The libxml2 library is discussed in Section 4.5.2 ― XML Processing.
The libxslt library provides a fast and complete implementation of XSLT, a language for transforming XML. The libxslt library is discussed in Section 4.5.3 ― Transforming XML with XSLT.
Pango is the core textand font handling library used in GNOME applications. It has extensive support for the different writing systems used throughout the world. Pango is discussed in Section 3.1.3 ― Pango.