API Reference

Core Libraries

Core

GLib Reference Manual

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.

Previous Versions

GIO Reference Manual

GIO provides a modern and easy-to-use VFS API. It provides a file system abstraction which allows applications to access local and remote files with a single consistent API.

Previous Versions

GObject Reference Manual

GObject provides the object system used for Pango and GTK.

Previous Versions

User Interface

Pango Reference Manual

Pango is the core text and font handling library used in GNOME applications. It has extensive support for the different writing systems used throughout the world.

Previous Versions

GDK-PixBuf Reference Manual

GdkPixbuf is a library for image loading and manipulation. The GdkPixbuf documentation contains both the programmer's guide and the API reference.

Previous Versions

GDK 3 Reference Manual

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

Previous Versions

GDK 4 Reference Manual

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

Previous Versions

GSK 4 Reference Manual

An intermediate layer which isolates GTK from the details of the OpenGL or Vulkan implementation.

Previous Versions

GTK+ 3 Reference Manual

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.

Previous Versions

GTK+ 4 Reference Manual

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.

Previous Versions

WebKit2GTK+ Reference Manual [external resource]

Web content rendering for the GNOME Platform

Cairo: A Vector Graphics Library

Cairo is a 2D graphics library with support for multiple output devices. It is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available.

Previous Versions

Clutter Reference Manual

Clutter is a GObject based library for creating fast, visually rich, graphical user interfaces.

Previous Versions

Multimedia

GStreamer Core Plugins Reference Manual

Powerful framework for creating multimedia applications. Supports both Audio and Video.

Previous Versions

GStreamer Core Reference Manual

Powerful framework for creating multimedia applications. Supports both Audio and Video.

Previous Versions

GStreamer Library Reference Manual

Powerful framework for creating multimedia applications. Supports both Audio and Video.

Previous Versions

GUPnP A/V Reference Manual

Small utility library that aims to ease the handling and implementation of UPnP audio/video profiles

Previous Versions

GUPnP DLNA Reference Manual

Library to ease DLNA-related bits for applications using gupnp.

Previous Versions

libcanberra Reference Manual

libcanberra is an implementation of the XDG Sound Theme and Name Specifications, for generating event sounds on free desktops,

Previous Versions

librygel-core Reference Manual

Previous Versions

librygel-renderer Reference Manual

Previous Versions

librygel-renderer-gst Reference Manual

Previous Versions

librygel-server Reference Manual

Previous Versions

Accessibility

ATK - Accessibility Toolkit

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.

Previous Versions

Communication

GSSDP Reference Manual

GObject-based API for handling resource discovery and announcement over SSDP.

Previous Versions

GUPnP IGD Reference Manual

Library to handle UPnP Internet Gateway Device port mappings.

Previous Versions

GUPnP Reference Manual

Core UPnP API built on top of gssdp

Previous Versions

libsoup Reference Manual

libsoup is an HTTP client/server library for GNOME. It uses GObjects and the glib main loop, to integrate well with GNOME applications.

Previous Versions

telepathy-glib Reference Manual [external resource]
Zapojit Reference Manual

libzapojit is a GLib/GObject wrapper for the SkyDrive and Hotmail REST APIs

Previous Versions

Data Storage

GNU Data Access Reference Manual

Previous Versions

libglom Reference Manual

Previous Versions

libgom Reference Manual

Previous Versions

Utilities

libxml2 Reference Manual [external resource]

Powerful and feature complete XML handling library.

libxslt Reference Manual [external resource]

The XSLT C library developed for the Gnome project. XSLT itself is a an XML language to define transformation for XML. Libxslt is based on libxml2.

dconf Reference Manual

dconf is a low-level configuration system. Its main purpose is to provide a backend to GSettings on platforms that don't already have configuration storage systems.

Previous Versions

GSF Reference Manual

Structured File Library (GSF) is an I/O abstraction for reading/writing compound files.

Previous Versions

GXPS Reference Manual

libgxps is a GObject based library for handling and rendering XPS documents.

Previous Versions

JSON-GLib Reference Manual

JSON-GLib is a library for reading and parsing JSON using GLib and GObject data types and API.

Previous Versions

libchamplain Reference Manual

Libchamplain is a C library providing a ClutterActor to display maps.

Previous Versions

libchamplain-gtk Reference Manual

Libchamplain-gtk is a C library on top of libchamplain providing a Gtk+ widget to display maps in GTK applications.

Previous Versions

Libnotify Reference Manual

libnotify is a library that sends desktop notifications to a notification daemon, as defined in the Desktop Notifications spec. These notifications can be used to inform the user about an event or display some form of information without getting in the user's way.

Previous Versions

Librsvg Reference Manual

Library for rendering of SVG vector graphics.

Previous Versions

Libsecret Library Reference Manual

libsecret is a library for storing and retrieving passwords and other secrets. It communicates with the "Secret Service" using DBus.

Previous Versions

Peas Reference Manual

libpeas is a gobject-based plugins engine, and is targetted at giving every application the chance to assume its own extensibility.

Previous Versions

VTE Reference Manual

Terminal emulator widget used by GNOME terminal.

Previous Versions

Others

Cogl Reference Manual

COGL is a low level OpenGL abstraction library developed for (and part of) Clutter. It is used primarily by Clutter to provide a common rendering API that works transparently across OpenGL >=1.4, OpenGL ES 1.1 and OpenGL ES 2.0.

Previous Versions

Others

Other Libraries

Multimedia

discident-glib Reference Manual

GObject-based API for the Discident and EAN lookup services.

Previous Versions

Grilo Reference Manual

Grilo is a framework that provides access to different sources of multimedia content, using a pluggable system.

Previous Versions

Communication

Easy Publish and Consume Reference Manual

The Easy Publish and Consume library (libepc) provides an easy method to publish data using HTTPS, announce that information via DNS-SD, find that information and finally consume it.

Previous Versions

GData Reference Manual

Previous Versions

Utilities

Amtk 5 Reference Manual

Actions, Menus and Toolbars Kit for GTK applications

Previous Versions

GMime 3.0 Reference Manual

GMime is a powerful MIME (Multipurpose Internet Mail Extension) utility library. It is meant for creating, editing, and parsing MIME messages and structures.

Previous Versions

gspell 1 Reference Manual

Spell-checking library for GTK applications

Previous Versions

Poppler Reference Manual

Previous Versions

Sensor Proxy Reference Manual

iio-sensor-proxy is a D-Bus proxy for accelerometers and ambient light sensors.

Previous Versions

Switcheroo Control Reference Manual

switcheroo-control is a D-Bus proxy for dual-GPU desktop integration.

Previous Versions

Introspection

libgirepository API Reference

Previous Versions

Others

Cally Reference Manual

Previous Versions

Camel Reference Manual

Previous Versions

Cheese Reference Manual

Previous Versions

Clutter Gst 3.0.4 Reference Manual

Previous Versions

Clutter-Gtk 1.8.0 Reference Manual

Previous Versions

Cogl 2.0 Reference Manual

Previous Versions

Cogl GST 2.0 Reference Manual

Previous Versions

Data Model API (libmodel)

Previous Versions

Devhelp Reference Manual

Previous Versions

Evince Document Library Reference Manual

Previous Versions

Evince View Library Reference Manual

Previous Versions

Evolution Connector for Microsoft Exchange Programmer’s Reference Manual

Previous Versions

Evolution Mail Composer Reference Manual

Previous Versions

Evolution Mail Engine Reference Manual

Previous Versions

Evolution Mail Formatter Reference Manual

Previous Versions

Evolution Shell Reference Manual

Previous Versions

Evolution Shell Reference Manual

Previous Versions

Evolution Shell Reference Manual

Previous Versions

Evolution Utilities Reference Manual

Previous Versions

Evolution Utilities Reference Manual

Previous Versions

Evolution-Data-Server Manual: Address Book Backend (libedata-book)

Previous Versions

Evolution-Data-Server Manual: Address Book Client (libebook)

Previous Versions

Evolution-Data-Server Manual: Address Book Data (libebook-contacts)

Previous Versions

Evolution-Data-Server Manual: Backend Utilities (libebackend)

Previous Versions

Evolution-Data-Server Manual: Calendar Backend (libedata-cal)

Previous Versions

Evolution-Data-Server Manual: Calendar Client (libecal)

Previous Versions

Evolution-Data-Server Manual: Graphical Utilities (libedataserverui)

Previous Versions

Evolution-Data-Server Manual: Private

Previous Versions

Evolution-Data-Server Manual: Utilities (libedataserver)

Previous Versions

Evolution-Data-Server Reference Manual

Previous Versions

GAIL Reference Manual

Previous Versions

GCab Reference Manual

Previous Versions

Gck Library Reference Manual

Previous Versions

Gcr Library Reference Manual

Previous Versions

GdaBrowser hacking manual

Previous Versions

gdbus-object-manager-example

Previous Versions

GDK Reference Manual

Previous Versions

Geoclue Reference Manual

Previous Versions

geocode-glib Reference Manual

Previous Versions

gfbgraph Reference Manual

Previous Versions

Glade User Interface Designer Reference Manual

Previous Versions

GNOME Desktop Library Reference Manual

Previous Versions

GNOME Desktop Library Reference Manual

Previous Versions

GNOME Dictionary Library Reference Manual

Previous Versions

GNOME Docking Library Reference Manual

The GNOME Devtools Library package provides a docking system and several utilities useful to GNOME development tools and GNOME applications in general.

Previous Versions

GNOME Online Accounts Reference Manual

Previous Versions

GNOME Panel Reference Manual

Previous Versions

Gnome Scan Reference Manual

Previous Versions

GNOME Software Reference Manual

Previous Versions

GNOME To Do - Reference Manual

Previous Versions

gnome-autoar Reference Manual

Previous Versions

gnome-bluetooth Reference Manual

Previous Versions

gnome-builder Reference Manual

Previous Versions

gnome-keyring Reference Manual

Previous Versions

GOffice Reference Manual

Previous Versions

GooCanvas Reference Manual

Previous Versions

GooCanvas Reference Manual

Previous Versions

goocanvas Reference Manual

Previous Versions

GP11 Reference Manual

Previous Versions

Graphene Reference Manual

Previous Versions

GSound Reference Manual

Previous Versions

GTK+ Reference Manual

Previous Versions

GtkGLExt Reference Manual

GtkGLExt is an OpenGL extension to GTK. It provides additional GDK objects which support OpenGL rendering in GTK and GtkWidget API add-ons to make GTK widgets OpenGL-capable.

Previous Versions

GtkSourceView 4 Reference Manual

Previous Versions

gucharmap Reference Manual

Previous Versions

GUPnP DLNA Gstreamer Reference Manual

Previous Versions

GUPnP DLNA Reference Manual

Previous Versions

libatspi Reference Manual

Previous Versions

Libbrasero-burn Reference Manual

Previous Versions

Libbrasero-media Reference Manual

Previous Versions

Libcroco Reference Manual

Previous Versions

libcryptui Reference Manual

Previous Versions

libgimp

Previous Versions

libgit2-glib Reference Manual

libgit2-glib is a glib library which wraps libgit2 providing making it easier to develop manage git repositories in a GObject oriented application.

Previous Versions

LibGlabels 3.0 Reference Manual

Previous Versions

LibGlbarcode 3.0 Reference Manual

Previous Versions

libgrss Reference Manual

Previous Versions

Libgtop Reference Manual

Previous Versions

libgweather Reference Manual

Previous Versions

libmediaart Library Reference Manual

Previous Versions

libmm-glib Reference Manual

Previous Versions

libnm Reference Manual

Previous Versions

libnm-glib Reference Manual

Previous Versions

libnm-util Reference Manual

Previous Versions

libnma Reference Manual

Previous Versions

Liboobs (System configuration management) Reference Manual

Previous Versions

libqmi-glib Reference Manual

Previous Versions

librest Reference Manual

Previous Versions

libseahorse Reference Manual

Previous Versions

Libwnck Reference Manual

Previous Versions

Libxklavier Reference Manual

Previous Versions

ModemManager Reference Manual

Previous Versions

Mutter Reference Manual

Previous Versions

NetworkManager Reference Manual

Previous Versions

OSTree Manual

Previous Versions

Panel Applet Reference Manual

Previous Versions

phodav Reference Manual

Previous Versions

Seed Reference Manual

Previous Versions

Shell Reference Manual

Previous Versions

St Reference Manual

Previous Versions

Totem Playlist Parser Reference Manual

Previous Versions

Totem Reference Manual

Previous Versions

Tracker Client Library Reference Manual

Previous Versions

Tracker Control Library Reference Manual

Previous Versions

Tracker Extract Library Reference Manual

Previous Versions

Tracker Miner Library Reference Manual

Previous Versions

Tracker Ontology Reference Manual

Previous Versions

Tracker SPARQL Library Reference Manual

Previous Versions

Yelp Reference Manual

Previous Versions

Language Bindings

C++

gtksourceviewmm Documentation

Previous Versions

libsigc++ Documentation

Previous Versions

libxml++ Documentation

Previous Versions

glibmm Documentation

Previous Versions

gtkmm Documentation

Previous Versions

atkmm Documentation

Previous Versions

gconfmm Documentation

Previous Versions

pangomm Documentation

Previous Versions

libvtemm Documentation

Previous Versions

librsvgmm Documentation

Previous Versions

goocanvasmm Documentation

Previous Versions

gstreamermm Documentation

Previous Versions

gtkglextmm Documentation

Previous Versions

libgda-uimm Documentation

Previous Versions

libgdamm Documentation

Previous Versions

cluttermm Documentation

Previous Versions

clutter-box2dmm Documentation

Previous Versions

clutter-gtkmm Documentation

Previous Versions

Vala

Vala API References [external resource]

Vala API References for GTK, GNOME and related libraries

Java

java-gnome API Documentation [external resource]

Java Interfaces for GTK, GNOME and related libraries

Python

PyGObject API Reference [external resource]

Python API Reference for GTK, GNOME and related libraries

PyGObject Documentation [external resource]

Documentation for the PyGObject Python bindings

JavaScript

JavaScript API browser [external resource]

Plugins for GNOME Application

Anjuta Developers Reference Manual

Previous Versions

Epiphany Reference Manual

Previous Versions

Evince Programmer's Reference Manual

Previous Versions

Eye of GNOME Reference Manual

Previous Versions

gedit Reference Manual

Previous Versions

Nautilus Extension Reference Manual

Previous Versions

nautilus-sendto Reference Manual

Previous Versions

Rhythmbox Development Reference Manual

Previous Versions

Standards

Desktop Application Autostart Specification

This freedesktop.org specification describes how applications can be started automatically after the user has logged in and how media can request a specific application to be executed or a specific file on the media to be opened after the media has been mounted.

Desktop Entry Specification

The Desktop Entries provide information about an application such as the name, icon, and description. These files are used for application launchers and for creating menus of applications that can be launched.

Desktop Notifications Specification

This specification standardizes the interface to desktop notification services.

Extended Window Manager Hints

This freedesktop.org specification standardizes extensions to the ICCCM between X desktops.

Icon Naming Specification

This freedesktop.org specification describes a common way to name icons and their contexts in an icon theme.

Icon Theme Specification

This freedesktop.org specification describes a common way to store icon themes.

Menu Specification

This freedesktop.org specification describes how menus are built up from desktop entries.

Shared MIME-info Database Specification

This freedesktop.org specification attempts to unify the MIME database systems currently in use by X desktop environments.

XDG Base Directory Specification

Various specifications specify files and file formats. This freedesktop.org specification defines where these files should be looked for by defining one or more base directories relative to which files should be located.