Guides

Overview

GNOME application development overview

Guide to the GNOME platform and libraries for developers.

Previous Versions

Development Guides

GNOME Human Interface Guidelines

Previous Versions

The Python GTK 3 Tutorial [external resource]

An introduction to writing GTK 3 applications in Python.

GNOME Accessibility Developers Guide

The GNOME Accessibility Guide is for developers who want to ensure their programming efforts are accessible to the widest audience of users. This guide also covers many of the Section 508 requirements.

Previous Versions

GNOME Developer Platform Demos

Previous Versions

GNOME Programming Guidelines

GNOME Programming Guidelines

Previous Versions

Integrating existing software with GNOME

Guide for Independent Software Vendors

Previous Versions

Optimization Guide

Software can be optimized in many ways: for speed, program size, or memory use. This section contains guides and tutorials for optimizing your software.

Previous Versions

Picking up GNOME proxy settings
Port your application from GNOME 2 to GNOME 3
The Clutter Cookbook

Previous Versions

Understanding Metacity Themes

We very much appreciate any reports of inaccuracies or other errors in this document. Contributions are also most welcome. Post your suggestions, critiques or addenda to the team.

Previous Versions

GNOME Human Interface Guidelines (GNOME 2)

Previous Versions

How Do I...?

Alternate menubar layout
App Folders
Application IDs
Beautiful Buttons
Custom Style
Deprecations
Diagram Overview
Dialogs
Extract Shell
GAction
GNotification
GtkGesture
Handling command line options in GApplication
How Do I Clutter with Gst over Gir for Python
Jhbuild
Labels
Making an application menu
Saving and Loading Window State
Search Provider
Setting up an application for D-Bus Launching
Subclassing GObject
Themed Icons
Using GMenu
Using GSettings
Using GtkApplication

Tutorials

GTK 2.0 Tutorial

Previous Versions

GTK Programming Tutorial [external resource]

This GTK tutorial is written for the C programming language. It is suitable for beginners and intermediate programmers.

Frequently Asked Questions

GTK FAQ

Previous Versions

Manuals

Accerciser Manual v0.2.0

This manual describes the use of Accerciser.

Previous Versions

Anjuta build tutorial

Previous Versions

Anjuta DevStudio

Help for Anjuta DevStudio.

Previous Versions

Anjuta FAQ

Frequently asked questions

Previous Versions

Glade Interface Designer Manual

Glade is a user interface designer for GTK+ applications.

Previous Versions

GTK-Doc Manual

User manual for developers with instructions of GTK-Doc usage.

Previous Versions

JHBuild Manual

JHBuild is a tool used to build the whole GNOME desktop from the version control system. JHBuild can also be customized to build other projects too.

Previous Versions

User manual for GHex

GHex is a simple binary editor. It lets users view and edit a binary file in both hex and ascii with a multiple level undo/redo mechanism. Features include find and replace functions, conversion between binary, octal, decimal and hexadecimal values, and use of an alternative, user-configurable MDI concept that lets users edit multiple documents with multiple views of each.

Previous Versions

GNOME Documentation Project

GNOME Documentation Build Utilities

The GNOME Documentation Build Utilities were created to make it easier for application developers to include and create documentation in their releases.

Previous Versions

GNOME Documentation Style Guide V1.6

Style guidelines for documentation and user interfaces.

Previous Versions

GNOME Documentation XSLT Manual

The GNOME Documentation XSLT stylesheets were created to provide fast DocBook to HTML conversion for real-time document viewing in GNOME's help browser, Yelp.

Previous Versions

GNOME Handbook of Writing Software Documentation V1.0.2

Instructions and guidelines on writing documentation for software.

Previous Versions

C++ Development

libsigc++ Tutorial

Previous Versions

libxml++ Tutorial

Previous Versions

Programming with gtkmm 4

This book explains key concepts of the gtkmm C++ API for creating user interfaces. It also introduces the main user interface elements ("widgets").

Previous Versions