Support unavailable
Please try again later

Camelot 101

by Jeroen Dierckx - Antonio Cuni for EuroPython 2012

Camelot, as seen on EuroPython 2010 and 2011 is a framework for developing desktop database applications at warp speed. It is to desktop applications what Django is to web applications. Some see it as a replacement for MS Access, but its tight integration with SQLAlchemy enables a vast amount of more advanced features and possibilities.

This tutorial style course will enable you to get started with your own Camelot project. We will tackle the hurdles met when going through the lifecycle of a desktop application

  • First Example : We start our little Camelot project, have a look at the concepts and terminology used within Camelot. We go through the different parts of the application and look at the possibilities to customize them.
  • Declarative Models and Views : Then we move on by defining a relational model and use introspection together with a declarative definition of our view to generate table and form views. We look at the various options that can be used to create and reuse form and table definitions.
  • Actions and Reports : Next we’ll dive into the details of actions the user can trigger, we discuss and experiment with the standard actions Camelot offers. One of those actions can be the generation of a nicely formatted Word document.
  • Advanced Model Definition : Once an application grows, more advanced model definition is needed. We will try out some advanced features of SQLAlchemy and see how they interact with the graphical interface.
  • Fine tuning of the GUI : Here we have a look at how Qt’s model-view-delegate framework works and how it is used by Camelot. This will enable us to fully customize the graphical interface to our needs.
  • Deployment and Users : The last step of the development process is getting the application to the users. We will discuss the deployment options and list the things to be aware of when submitting an application to its users.
  • Q & A : Throw all Camelot questions you have in the group and try to resolve them together.



  1. Gravatar
    The course can be altered slightly according to your wishes, so comment here if you would like emphasis on a specific topic!

  2. Gravatar
    If you plan to attend the Camelot training, please install the following:

    * QtSDK -
    * SIP -
    * PyQt -
    * Camelot -

    * libxml2 (for xmllint) -

    That way we can start the course asap.
  3. Gravatar
    Thanks to everyone who attended and thanks to the EuroPython organisation and talk managers!

New comment

Download slide (None)
(Size: 6.0 MB)

240 minutes (inc Q&A)

Tagged as

linux framework gui sqlalchemy desktop
Our Sponsors
Python Experts
SSL Matrix
Wanna sponsor?