Dunnart Constraint-Based Diagram Editor

What is Dunnart?

Dunnart is a prototype constraint-based diagram editor. It includes standard diagram editing capabilities, as well as advanced features such as constraint-based geometric placement tools (alignment, distribution, separation, non-overlap, and page containment), automatic object-avoiding poly-line connector routing, and continuous network layout.


Nightly builds for Mac OS X, Linux and Windows can be found here:

How to cite?

  • Tim Dwyer, Kim Marriott, and Michael Wybrow.
    Dunnart: A constraint-based network diagram authoring tool.
    In Proceedings of 16th International Symposium on Graph Drawing (GD'08), LNCS 5417, pages 420–431. Springer-Verlag, 2009. DOI [PDF]

Source code

Source code for Dunnart, licensed as under the GPL, is available here:


Further information

The concept behind Dunnart is to use constraint-based methods to free users from manually maintaining relationships within their diagrams. These could include geometric relationships, non-overlap, object-avoiding connector routes or graph layout. In Dunnart, the user can define these features of their layout and they will be automatically maintained throughout further editing. The user can override or alter these relationships at any time

Dunnart screenshot

Dunnart is a research prototype. As such, it lacks some of the features and polish of a professional diagram editor. Many of the significant features of Dunnart are implemented in the open-source Adaptagrams constraint layout libraries and are described in my publications and/or PhD thesis.