Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am thinking of starting a small side project and developing a piece of software. I would like to base it's design on Geary, which I like very much. Which GUI library can I use to achieve this?

Geary is written in Vala, which I am not very interested in using. It would also be a shame if the method I used was not cross compatible.


share|improve this question

Geary's UI is GTK+ 3 based. The folder list (left column) and conversation list (middle column) are Gtk TreeViews. The conversation viewer and email composer are both WebKitGTK WebViews, so that's all HTML and CSS you're seeing.

GTK+ and WebKitGTK both provide C interfaces. There's standard bindings for many other languages, including Vala, Python, C++, etc.

For the most part the toolbars, dialogs, account management windows, etc. were built using Glade. The cool thing about Glade is it saves your UI as an XML file which can be loaded into any GTK+ app, regardless of the language it's written in.

Even if you don't write your application in Vala I'd encourage you to look at the Geary source if you'd like to see how things work since GTK is pretty similar in any language. You can browse the source online here:

Hope that's enough to get started! If you have any other questions about the Geary UI, I'd be happy to help.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.