Gaphor is a UML modeling application written in Python. It is designed to be easy to use, while still being powerful. Gaphor implements a fully-compliant UML 2 data model, so it is much more than a picture drawing tool. You can use Gaphor to quickly visualize different aspects of a system as well as create complete, highly complex models.

Gaphor is designed around the following principles:


Gaphor is a simple and easy to use modeling tool for UML, we believe complexity impedes a novice modeler's first steps. Only some basic knowledge of UML is required.

Aimed at Beginners.

It is aimed at beginning modelers who want a simple and fast tool so that they can focus on learning. The application should not bother the user every time they do something non-UML-ish.

Less is More.

Gaphor has only the most essential features, so users are not intimidated by a baffling interface.


UML is a graphical modeling language, so all information you put in the model is visible in the diagrams. For example, stereotypes are modeled in diagrams. There should be one—and preferably only one—obvious way to do it with Gaphor.


Gaphor is built in Python and can be extended easily via "entry points".

Have fun!

Learning should inspire fun - Gaphor helps learners quickly create models of software and systems.

Not Enterprise.

Sometimes enterprise software tries to do everything for everyone. We are focused on the best possible experience for simple modeling and Gaphor is not a full featured enterprise tool.