Gaffe stands for (G)raphical (A)nimator (F)ront(E)nd. It provides a customisable GUI front-end to a Z animator.

Gaffe provides three main functions:

  • Gaffe generator automatically creates a custom user interface to use with a Z specification provided to it.
  • Gaffe designer provides a graphical interface builder for creating or modifying the custom user interface.
  • Gaffe animator attaches to the Z animator and allows the custom interfaces created with the generator and designer to be used to test a Z specification.


Gaffe was initially created as part of the Master’s thesis by Nicholas Daley. The thesis describing the project and associated documents are available:


The DesignerCore runs a configuration script when it starts. Extra or replacement scripts can be configured on a per system/per user basis. The ability to configure this will be added to the GUI, but at present anyone wishing to do this will have to find an alternative way to configure this into java.util.prefs’ persistent store.

License of Gaffe-created interfaces

Are interfaces created using Gaffe derivative works under the GPL?

Interface files created by the Gaffe designer, or the generator should be considered exempt from the GPL’s restrictions on derivative works.

This means is that the files you create are not automatically GPLed, and you may attach any license you wish to them.

Back to top

Version: 1.6-SNAPSHOT. Last Published: 2016-04-09.

Reflow Maven skin by Andrius Velykis.