A free and open-source UML and SysML modeling application written in Python, designed for simplicity and power.
Gaphor is a free and open-source modeling application for UML and SysML, written in Python. It provides a fully-compliant UML 2 data model, enabling users to create detailed system visualizations and complex models beyond simple diagram drawing. The tool emphasizes ease of use while offering powerful modeling capabilities.
Software architects, system designers, and engineers who need to create UML or SysML diagrams for system modeling and documentation. It is also suitable for educators and students learning modeling languages.
Developers choose Gaphor for its strict UML 2 compliance, intuitive GTK-based interface, and ability to handle complex models without sacrificing usability. Its open-source nature and scripting support offer flexibility and extensibility not always found in proprietary tools.
Gaphor is the simple modeling tool
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements a complete UML 2 data model, ensuring accurate and detailed modeling beyond simple diagram drawing, as stated in the README's emphasis on compliance.
Offers templates for UML, SysML, RAAML, and C4 Model, allowing users to switch between different modeling languages easily, as highlighted in the usage section.
Can be used from scripts and Jupyter notebooks for automation, enabling integration with other tools, which is a key feature mentioned in the background.
Features a modern GTK-based interface with Cairo rendering, designed for simplicity and consistency, making it accessible even with basic UML knowledge, per the philosophy section.
Explicitly listed as a non-goal in the README, so it cannot generate source code or executable artifacts from diagrams, limiting its utility for development workflows.
As a standalone desktop app, it lacks built-in cloud collaboration features, which might be a drawback for distributed teams compared to web-based tools.
Installation requires Python, and while there are installers, setting up for development or scripting might involve additional steps, potentially complicating deployment.