This document.

WARNING

this tutorial is in really early stages. So it's almost empty and hasn't been checked. Uglier, GNOME is in early stages too, so it's APIs are changing very frequently and the info here is probably inaccurate. When this document and the code disagree, the code wins. :-)

As a new GNOME developer I've had some trouble finding info about how to do some things (and the people on the list were being a bit annoyed with my questions). So I'm trying to make it easy for you, the developers that come after me.

This document is intended not only to be a tutorial, but also a reference. I hope it'll grow to be the ultimate guide to the GNOME internals. I would like to include here the architecture notes that are now in the website and the style guide.

If you add or change some API please document it here.