Gaphor: Open-source UML and SysML Modeling Application For Windows, Linux and macOS

Developers and software engineers are often required to create diagrams in their line of work. As there are many commercial solutions some may feel compelled to buy like I did on macOS, there are few alternative professional solutions like Dia diagram editor.

Our topic of the day is Gapher a simple yet powerful solution, where we list its features and why it's an important asset for developers and software engineers.

Gapher is a free open-source simple UML and SysML program. It's a multiplatform solution which means it runs on Windows, Linux and macOS.

Gapher on Manjaro Linux with Dark Theme (src. Medevel.com)
Gapher on Manjaro Linux with Dark Theme (src. Medevel.com)

Let's talk a bit about SysML and UML:

SysML (System Modeling Language) is a general-purpose modeling language for systems engineering applications for analyzing, designing and verifying complex systems.

UML (Unified Modeling Language) is a general-purpose standardized modeling and developmental. It's used by software developers for specifying, visualizing, constructing and documenting the software systems, also it can be used in business modeling.

The main difference between UML and SysML is that UML provides only limited support for tabular nations.

Gapher features a simple stacked user-interface with a drag-and-drop functionality which does not require a steep learning curve.  It allows the developers to quality visualize a  highly complex models.

Animated picture of how does Gaphor works (src. Gaphor)

It also offers a tabbed interface which means the user can open several working documents.

Gapher is a memory-wise application on Linux, Windows and macOS desktops.

The program is built with Python and its GUI uses GTK, Cairo (PyGObject, PyCairo) and Gaphas which a diagramming widget library that powers the diagramming functionality of Gapher.

Features

Gapher with stylesheet (src. Gapher)

  1. Open-source
  2. Multi-platform: Windows, Linux, macOS
  3. Lightweight
  4. UML and SysML support
  5. UML v2.0 compliant
  6. Non-UML Diagram support
  7. Copy and paste support
  8. XML file format support
  9. Undo manager
  10. Rich connection protocol
  11. Extensible through plugins
  12. Class support
  13. Diagram styles with a built-in styling engine
  14. Rich modeling elements set
  15. Dark mode support
  16. Alignment and snapping option
  17. Elements: Classes, components, actions, use cases, styles, interactions, profiles
  18. Zoom-in and zoom-out
  19. Export to SVG, PDF, PNG and XMI
  20. Create a new document from templates which speeds up the production
  21. Shortcut directory
  22. Extensible through plugins

Getting started with modeling a complex system with Gaphor

Getting started with Gaphor

Install Gaphor on your system:

1- Windows

Windows releases are coming in two versions:  portable and installable version. Simply download the executable files and run it to install for the packed version or to run for the portable version.

2- macOS

For the macOS users, they can install a .dmg package which they can install it traditionally on their system. The macOS package can be found on GitHub releases.

Note that macOS Mojave user and later systems will have to grant permission for Gaphor to run it.

3- Linux

For Linux distros Gaphor is available as a Flatpak packages which can be installed in any distro that supports Flatpak.

$ flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
$ flatpak install --user flathub org.gaphor.Gaphor
Install Gaphor with Flatpak

For Arch Linux users (Or Arch-based distros), Gaphor can be installed from am AUR package.

4- Python Package

If you are a fan of installing python packages, the Gaphor's Python package is available through PyPI.

pip install gaphor

5- Build from the source

Guru users tend to install their software by building it from the source, therefore they can find installation instructions on manual installations for macOS, Linux and Windows on Gaphor's documentation.

License

Apache License V2.

Resources



  • If you are a photographer (a pro of a hobby photographer like me) and want to make a portfolio for your work, you will look for a fast and effective way. Most likely, you have an account at some websites like Flicker, DeviantArt, and even Instagram. These services are free,...Read more...

  • Open Source Software, since its birth, has made people wonder about its effects. The debate is never-ending, and for the right reasons. Giants like Apple have often viewed Open Source skeptically because they are mostly unfounded. However, one cannot deny that these sources are functional and flexible. They are also...Read more...

  • Web+center Web+center is an open-source customizable web-based help desk application that comes to fit unique organizational processes. With it, you will be able to customize the platform to specific business functions. It is used as IT help desk, customer support, asset tracking and facilities management, community colleges,...Read more...

  • A headless software is a program that can work and performs without a user interface. A headless Linux and a headless Google Chrome can perform seamlessly and smoothly without the need to run its GUI. Likewise, a headless web system is a functional web app but without a user interface....Read more...

  • Baby Buddy is a free open-source web-based solution for new parents to help them log, monitor and track their parenting activities. As it is primary function, it helps users log: SleepFeeding routineFeeding methodsDiaper changes Tummy time Soon as the project lunched on GitHub, it gains a lot of attention from...Read more...