Upgrading GTK based Python applications
A hot topic in the GNOME world is upgrading applications from GTK+ 3 to GTK 4 and libadwaita. For Gaphor, we completed this task around a year ago, but I never took time to write how we did it.
A picture is worth a thousand words. Describe and document your applications and systems with Gaphor to enhance knowledge sharing.
Gaphor is a UML, SysML, RAAML, and C4 modeling application. 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.
No vendor lock-in: Gaphor is written in Python and is 100% Open Source, available under a friendly Apache 2 license.
Whether you’re a casual modeler documenting a project or a Model Driven Development expert, Gaphor has got you covered.
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. No hidden panels and property pages. Just diagrams!
Gaphor is extensible. Plug-in a code generator or export your diagrams for documentation. Create your own extensions and access them through the GUI or CLI.
Gaphor implements the UML, SysML, and RAAML OMG standards. It also includes support for the C4 model for visualizing software architectures.
Build Class, Interaction, and State Machine diagrams for software or Block Definition and Requirements diagrams for systems. Model the elements you need. If you want to mix and match, you can even add different diagram items to the same diagram to get the view you need.
Customize the diagrams you create with our built-in styling engine.
Easily find all element of your model in the tree view.
Love dark mode? We can do that too.
There are many ways to install Gaphor. The simplest is to download the official installer for Windows or macOS. For Linux you can install Gaphor using FlatHub. You can also use Python’s built-in pip
tool as long as you have all the required dependencies installed.
Do you want to know what’s going on with Gaphor? Read our blog!
Contact the team if you want to share content related to Gaphor.
A hot topic in the GNOME world is upgrading applications from GTK+ 3 to GTK 4 and libadwaita. For Gaphor, we completed this task around a year ago, but I never took time to write how we did it.
In this post I’ll outline a workflow for developing native extensions for Python. The build tool of choice is Meson, and we’ll use PDM to ensure a frictionless developer experience.
For a long time, C extensions for Python can be built with
setuptools. Although this works fine for simple
extension, it gets tedious if your extension needs to link to other libraries. In those cases it’s often necessary to
write custom code in setup.py
to find and link to those libraries.
On February 16, 2024, we released Gaphor 2.24.
It’s been quite a while since I produced a proper updates post.
Since the 2.17 release about a year before, a lot has changed.