# Running X [[User documentation|UserDocumentation]] contains documentation for running the X server and basic X clients, as well as protocol specifications and basic client programming documentation. # Developing X applications Rather than develop directly for X, we recommend you use a toolkit such as [[GTK+|http://www.gtk.org/documentation.php]] or [[Qt|http://doc.qt.nokia.com/latest/]]. There are many other popular toolkits, some special-purpose, such as [[Clutter|http://www.clutter-project.org]] and [[Enlightenment/EFL|http://www.enlightenment.org]]. For low-level X development, [[XCB|http://xcb.freedesktop.org/tutorial/]], the X C Bindings provide a clean low-level protocol binding. Its older cousin Xlib (or libX11), is not recommended for new development, but is still very widely used. Xt is a similarly deprecated library for building toolkits. [[Documentation for Xlib and Xt|ProgrammingDocumentation]] is available. Protocol documentation, man pages, etc. of the most recent X11R7 release: [[http://www.x.org/releases/X11R7.7/doc/index.html]] # Downloading, running, and developing X.Org code The [[development documentation|Development]] describes how to download and build the X.Org code (including the X server and drivers), and rough notes on their internals. [[The X New Developer’s Guide|guide]] attempts to be a gentle introduction to how the entire stack is put together and how some of the pieces work.