1. Summary
  2. Files
  3. Support
  4. Report Spam
  5. Create account
  6. Log in


Welcome to gtkmvc

gtkmvc is a thin Framework for supporting GUI programming with Python and Pygtk. Its major features are:

  1. A practical implementation of a Model-View-Controller pattern dialect.
  2. A transparent implementation of the Observer pattern.
  3. Guides the design and the structure to your application, still being behind the scene.
  4. gtkmvc is small: you can distribute it along with your application, with no bad effects on its dependencies list.
  5. A good Documentation set.

For a quick example, see gtkmvc in 5 minutes.

gtkmvc is often compared to the great project Kiwi. However, the two projects are different, as Kiwi focuses more on the presentation side while gtkmvc is more focused on the logic side of the application, and does not provide any extension to what the toolkit pygtk provides.


December 30 2010: gtkmvc version 1.99.1 has been released!

For all information see What's new



Programming GUI applications is a terribly plain boring task

Period. As that's a hardly questionable statement, my suggestion is to always consider a batch modality (no GUI) first for the interface of your application. Or at least to consider supporting a batch modality anyhow. In this sense having the logic of the application separated from the presentation layer can largely help.

If GUI programming is not exactly rocket science, it can become even a pain in the neck. In fact GUI handling code (especially the control flow part) tends to blow up linearly in size, and it is inclined to get containing many wrong dependencies.

If there are no barriers among the logic and presentation layers, the well-known laziness of programmers wins the day. The ending result is a spaghetti code which is later very hard to get relieved of.

gtkmvc plays a rule to help designers to correctly structure their applications, and to provide them with a easy, light, non-invasive and still high-level framework which in the end makes GUI programming an easier task.


Download of the source code, examples and documentation can be done here.

SourceForge Project Page

You find the SourceForge Project Page Here


Here you can find the official documentation of the project.

For a quick example, see gtkmvc in 5 minutes


gtkmvc is Free Software, covered by the GNU Lesser General Public License (LGPL)


For feedback and critics, please post messages to the project mailing list.

To contact the author privately, send an email to roboogle at gmail dot com.

To submit a bug report or to request a new feature, use the project tracker.