Gaphor is a UML and SysML modeling application written in Python.

Overview
Gaphor logo

Gaphor

Build state Docs build state PyPI Downloads Gitter

Maintainability Test Coverage Sourcery Code style: black standard-readme compliant All Contributors

Gaphor is a UML and SysML 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 Demo

πŸ“‘ Table of Contents

πŸ“œ Background

Gaphor is a UML and SysML modeling application written in Python. We designed it 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:

  • Simplicity: The application should be easy to use. Only some basic knowledge of UML or SysML is required.
  • Consistency: UML is a graphical modeling language, so all modeling is done in a diagram.
  • Workability: The application should not bother the user every time they do something non-UML-ish.

Gaphor is a GUI application that is built on GTK and Cairo. PyGObject and PyCairo provide Python bindings for those libraries. Gaphas provides the foundational diagramming functionality.

πŸ’Ύ Install

You can find the latest version on the gaphor.org website. Gaphor ships installers for macOS and Windows. Those can be found there. The Python package is also available on PyPI.

All releases are available on GitHub.

If you want to start developing on Gaphor, have a look at the Installation section of our Tech docs.

πŸ”¦ Usage

Creating models

Once Gaphor is started a new empty model is automatically created. The main diagram is already open in the Diagram section.

Select an element you want to place, for example a Class, by clicking on the icon in the Toolbox and click on the diagram. This will place a new Class item instance on the diagram and add a new Class to the model (it shows up in the Navigation). The selected tool will reset itself to the Pointer tool if the option ''Diagram -> Reset tool'' is selected.

Some elements are not directly visible. The section in the toolbox is collapsed and needs to be clicked first to reveal its contents.

Gaphor only has one diagram type, and it does not enforce which elements should be placed on a diagram.

Create a New Diagram

  1. Use the Navigation to select an element that can contain a diagram (a Package or Profile)
  2. Select Diagram, and New diagram. A new diagram is created.

Copy and Paste

Items in a diagram can be copied and pasted in the same diagram or other diagrams. Pasting places an existing item in the diagram, but the item itself is not duplicated. In other words, if you paste a Class object in a diagram, the Class will be added to the diagram, but there will be no new Class in the Navigation.

Drag and Drop

Adding an existing element to a diagram is done by dragging the element from the Navigation section onto a diagram. Diagrams and attribute/operations of a Class show up in the Navigation but can not be added to a diagram.

Elements can also be dragged within the Navigation in order to rearrange them in to different packages.

β™₯ Contributing

Thanks goes to these wonderful people (emoji key):


Adam Bjurstrom

πŸ›

Adam Boduch

πŸ’» ⚠️ πŸ›

Alexander Wilms

πŸ›

Alexis Howells

πŸ“–

Arjan Molenaar

πŸ’» πŸ› πŸ“– πŸ‘€ πŸ’¬ πŸ› πŸ”Œ ⚠️

Blippost

πŸ€”

Brock Tibert

πŸ›

Christian Hoff

πŸ’»

Dan Yeaw

πŸ’» ⚠️ πŸ“– πŸ“¦ πŸš‡ πŸ› πŸ’¬

DimShadoWWW

πŸ›

Encolpe DEGOUTE

🌍

Enno GrΓΆper

πŸ’»

Enno Zickler

πŸ›

Gleb Smirnov

πŸ›

Jan

πŸ›

JensPfeifle

πŸ“–

Jordi Mallach

🌍

Jorge DLG

πŸ›

Kapil Thangavelu

πŸ›

Mikhail Bessonov

πŸ›

Nedko Arnaudov

πŸ›

Rafael MuΓ±oz CΓ‘rdenas

πŸ›

Rui Maciel

πŸ€”

Steven Liu

πŸ›

Tiemen Schuijbroek

πŸ› πŸ’»

Tobias Bernard

🎨

TomBous

πŸ›

Tony

🚧

Xander982

πŸ–‹ πŸ›

Yauhen Kirylau

πŸ“– πŸ“¦ πŸ€” πŸ›

albanobattistella

🌍

freddii

πŸ€” πŸ“–

freezed-or-frozen

πŸ›

gavr123456789

πŸ€”

kellenmoura

πŸ›

melisdogan

πŸ“–

milotype

🌍 πŸ“–

samirodj

πŸ›

seryafarma

πŸ“–

tronta

πŸ›

wrobell

πŸ’» ⚠️ πŸ› 🎨

This project follows the all-contributors specification. Contributions of any kind are welcome!

  1. Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug. There is a first-timers-only tag for issues that should be ideal for people who are not very familiar with the codebase yet.
  2. Fork the repository on GitHub to start making your changes to the master branch (or branch off of it).
  3. Write a test which shows that the bug was fixed or that the feature works as expected.
  4. Send a pull request and bug the maintainers until it gets merged and published. πŸ˜„

See the contributing file!

Β© License

Copyright Β© Arjan Molenaar and Dan Yeaw

Licensed under the Apache License v2.

Summary: You can do what you like with Gaphor, as long as you include the required notices. This permissive license contains a patent license from the contributors of the code.

Issues
  • Ability to set BG/FG colors for a node/as a colorscheme

    Ability to set BG/FG colors for a node/as a colorscheme

    I'm submitting a...

    • [ ] Bug report
    • [x] Feature request
    • [ ] Documentation issue or request

    Current behavior

    Currently only text, size and position of the node could be changed.

    Expected behavior

    Also add possibility to set colors of the nodes.

    feature 
    opened by actionless 34
  • Left-align sidebar headers

    Left-align sidebar headers

    Describe the bug The sidebar headers are centered, while the content of each category is left-aligned. This results in a pretty weird layout:

    image

    I think left-aligning the headers would make the layout feel a lot less disjointed and easier to scan.

    OS

    • [x] Linux (Fedora 33)

    Version Version of Gaphor: 2.0.1 from Flathub

    first-timers-only 
    opened by bertob 26
  • Add Support for SysML

    Add Support for SysML

    The Systems Modeling Language (SysML) is a general-purpose modeling language for systems engineering applications. UML is focused on designing software, SysML allows you to design a complex system like an Autonomous Vehicle, Mars Rover, or Medical Device. It allows you to connect the behavior, structure, and requirements of a system through multiple abstraction levels. This is why I am interested in Gaphor, having an open source and simple modeling tool would be a huge boost to teaching engineers how to design complex systems. SysML is a subset and extension of UML.

    High Level Changes

    There are changes to the diagrams, including adding additional diagrams:

    1. Requirements Diagram
    2. Parametric Diagram
    • This is a low impact for Gaphor since we only have 1 diagram type.

    Structure

    Object, Profile, Deployment, and Component diagrams are removed.

    • For Gaphor, the Component and Profile portions of the Palette could be hidden / removed

    Behavior

    Communication, Interaction Overview, and Timing diagrams are removed. Protocol state machines are removed (behavior state machines remain).

    • For Gaphor, what we support for Interactions could be renamed Sequence

    High Priority Changes

    1. Blocks (Class)
    • Associations have no arrowheads on both ends, which is the default we display them as well
    1. Internal Blocks
    • 4 properties of Blocks, but only parts, references are high priority
    • Proxy ports and flow specifications
    1. Requirement (Class)
    • DeriveReqt, Verify, Satisfy (Trace)
    1. Change Palettes
    • Hide Classes, Components, and Profiles Palettes
    • Rename Interactions to Sequence
    • Add Block, Internal Block, and Requirements Palettes

    Medium Priority Changes

    1. Blocks – value properties and constraint properties
    2. Allocation
    3. Do we need a way to make an Activity (defining reusable behavior of an Action)?

    Low Priority Changes:

    1. Parametric Diagram - I'm not a big fan of the usefulness of modeling parametrics
    2. Model Elements support
    • Conform (dependency)
    • View (package)
    • Viewpoint (Class)
    • Rationale and Problem (Comments)
    1. ValueType
    2. QuantityKind / Unit
    3. Block value properties and constraint properties
    4. Activity extensions
    • Control as Data
    • Continuous Systems
    • Probability
    1. Copy (Trace)
    2. Constraint Blocks

    I'm submitting a...

    • [ ] Bug report
    • [X] Feature request
    • [ ] Documentation issue or request
    feature 
    opened by danyeaw 26
  • Support For ItemFlow (SysML) and InformationFlow (UML)

    Support For ItemFlow (SysML) and InformationFlow (UML)

    Is your feature request related to a problem? Please describe. In order to finish support for STPA, we need support for adding an ItemFlow to a Connector. This will also improve support for SysML and UML.

    For example in SysML: image

    The ItemFlow is represented by the black arrowhead on the connector. Torque is the itemProperty that belongs to the flow, and it is typed by a ValueType, Block, or Signal.

    These are used in STPA to represent the flows in the control flow diagrams: image

    ItemFlows are also allowed on associations, for example creating a Context Diagram using a Block Definition Diagram.

    UML also supports a similar diagram element called an InformationFlow with InformationItems representing the conveyed information that is flowing: image

    In addition to ValueType, Block, and Signal being allowed to represent the type of flow above, UML also supports other Classifiers like DataTypes and Signals.

    Describe the solution you'd like Add support for Signal elements with SysML and UML as well as InformationItems.

    Drag a Block, Signal, DataType, ValueType, or InformationItem on top of a Connector and it creates an ItemFlow. Ideally dragging additional elements should be supported.

    On the propertypage you can remove ItemFlows / InformationItems and change the flow direction.

    Describe alternatives you've considered Avoid usage of flows.

    Additional context Add any other context or screenshots about the feature request here.

    feature 
    opened by danyeaw 25
  • Mac Gaphor 2.0 failing to open Windows Gaphor 1.2.0rc2 .gaphor file

    Mac Gaphor 2.0 failing to open Windows Gaphor 1.2.0rc2 .gaphor file

    Screen Shot 2020-08-01 at 7 05 27 PM

    I'm submitting a...

    • [X] Bug report
    • [ ] Feature request
    • [ ] Documentation issue or request

    Current behavior

    I just tried to open an .gaphor file from a Windows install prior to today in a fresh Gaphor 2.0 install on a Mac and Gaphor coughed at that. "Error while loading model from file Technical details: <class 'gaphor.storage.parser.ParserException'> Invalid XML: tag not known (state=0)"

    Expected behavior

    Open the .gaphor file without errors!

    Minimal reproduction of the problem with instructions

    Try saving a .gaphor file on a Windows Gaphor 1.2 and opening it in Mac Gaphor 2.0

    If this is a feature request please fill out the following:

    
    As a (user, developer, contributor, etc):
    I want:
    So that:
    
    

    System Information

    OS:

    • [ ] Linux (Please put in notes the specific distro)
    • [X] MacOS
    • [ ] Windows 10
    • [ ] Windows 7

    NOTES:

    bug 
    opened by Xander982 23
  • Create a Wikipedia Page for Gaphor

    Create a Wikipedia Page for Gaphor

    I'm submitting a...

    • [ ] Bug report
    • [ ] Feature request
    • [X] Documentation issue or request

    Gaphor isn't found on Wikipedia, and is absent in the list of UML tools. It would be great if it was represented. Creating a wiki page is some work, see this overview.

    opened by danyeaw 23
  • Can't open diagram with a stalled(?) comment node

    Can't open diagram with a stalled(?) comment node

    I'm submitting a...

    • [x] Bug report
    • [ ] Feature request
    • [ ] Documentation issue or request

    Current behavior

    Loading stucks with the exception pritned:

    gaphor.storage.storage INFO Loading file deployment_diagram.gaphor
    gaphor.storage.parser ERROR File corrupted, remove element 8cef44be-7376-11ea-80af-e4f89cae6ece and try again
    NoneType: None
    gaphor.storage.storage INFO Read 140 elements from file
    gaphor.storage.storage WARNING file b'/home/lie/projects/test/deployment_diagram.gaphor' could not be loaded (module 'gaphor.UML' has no attribute 'CommentItem')
    Traceback (most recent call last):
      File "/usr/lib/python3.8/site-packages/gaphor/misc/gidlethread.py", line 127, in __generator_executer
        result = next(self._generator)
      File "/usr/lib/python3.8/site-packages/gaphor/storage/storage.py", line 311, in load_generator
        for percentage in load_elements_generator(
      File "/usr/lib/python3.8/site-packages/gaphor/storage/storage.py", line 182, in load_elements_generator
        yield from _load_elements_and_canvasitems(
      File "/usr/lib/python3.8/site-packages/gaphor/storage/storage.py", line 222, in _load_elements_and_canvasitems
        cls = getattr(UML, elem.type)
    AttributeError: module 'gaphor.UML' has no attribute 'CommentItem'
    

    Expected behavior

    Minimal reproduction of the problem with instructions

    1. create a diagram with comment element (probably it was due to adding and then removing the comment node, see example files attached in one of the comments below)
    2. save it
    3. close the Gaphor app
    4. reopen the diagram again

    System Information

    OS:

    • [x] Linux (Please put in notes the specific distro)
    • [ ] MacOS
    • [ ] Windows 10
    • [ ] Windows 7
    bug 
    opened by actionless 20
  • Usability: Hide stereotype options in the element editor.

    Usability: Hide stereotype options in the element editor.

    When editing a class element, it might make sense to hide the stereotype section since it isn't implemented. At least it appears that way. It may be viewed as defective by some users. My first impression was that I was missing a step somewhere.

    moved to LH 
    opened by adamboduch 19
  • Popups/tooltips for buttons

    Popups/tooltips for buttons

    Describe the bug

    Should all buttons have popups/tooltips?

    To Reproduce

    Steps to reproduce the behavior:

    1. Hover above the button that looks like a Page with a spanner.
    2. No popup saying what that button does.
    3. Should the down-arrow to the right of Open have a popup?
    4. Should the button with 3 horizontal lines (Menu) have a popup?

    Other buttons like Undo and Redo have popups.

    Expected behavior

    All buttons should have a popup to indicate what they do. This can also help with screenreaders for people who have sight-impairment.

    Screenshots

    Missing popup/tooltip

    OS

    Linux Mint 20.2 Cinnamon

    Version

    Version of Gaphor: 2.6.2

    Additional information

    Help with screen-readers

    Thank you

    bug 
    opened by ovari 18
  • Separate decision and merge nodes

    Separate decision and merge nodes

    Decision or merge node works differently. There shall be a support to set whether a particular node is either a decision, or a merge node. They shall be rendered differently, if possible.

    feature 
    opened by sz332 17
  • Improve Packaging and Sign / Notarize macOS App

    Improve Packaging and Sign / Notarize macOS App

    • Makes packaging more common between Windows and macOS using PyInstaller.
    • Signs and notarizes the .app and .dmg.

    PR Checklist

    Please check if your PR fulfills the following requirements:

    PR Type

    What kind of change does this PR introduce?

    • [ ] Bugfix
    • [X] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] Documentation content changes

    What is the current behavior?

    macOS apps aren't signed and create warnings that the app isn't trusted

    Issue Number: #395

    What is the new behavior?

    macOS app is signed an notarized using an Apple Developer account.

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [X] No

    Other information

    feature 
    opened by danyeaw 16
  • Resize of partition keeps actions in the same swimlane

    Resize of partition keeps actions in the same swimlane

    PR Type

    What kind of change does this PR introduce?

    • [ ] Bug fix
    • [x] Feature
    • [ ] Chore (refactoring, formatting, local variables, other cleanup)
    • [ ] Documentation content changes

    What is the current behavior?

    When a partition is resized, the actions stay in the same place.

    Issue Number: Fixes #1014

    What is the new behavior?

    When a partition is resized, the actions are moved accordingly.

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No
    opened by amolenaar 1
  • State machines and regions

    State machines and regions

    PR Type

    What kind of change does this PR introduce?

    • [ ] Bug fix
    • [x] Feature
    • [ ] Chore (refactoring, formatting, local variables, other cleanup)
    • [ ] Documentation content changes

    What is the current behavior?

    State machines are only created implicitly to hold states.

    Issue Number: #1654

    What is the new behavior?

    • [x] State machines can be created from the toolbox
    • [x] (pseudo)states can be moved between state machines
    • [ ] Region support in Statemachine
    • [ ] Region support in (composite) State
    • [ ] Resizing state (machine) keeps substates in the correct visual region
    feature 
    opened by amolenaar 1
  • State diagram: support all pseudostates

    State diagram: support all pseudostates

    PR Type

    What kind of change does this PR introduce?

    • [ ] Bug fix
    • [x] Feature
    • [ ] Chore (refactoring, formatting, local variables, other cleanup)
    • [ ] Documentation content changes

    What is the current behavior?

    Only initial and shallowHistory pseudostates are supported.

    Issue Number: #1654

    What is the new behavior?

    All pseudostate kinds are supported.

    To do

    • [x] create icons for remaining states
    • [x] update connector rules -> removed extra rules for initial pseudostate

    image

    opened by amolenaar 2
  • State Machine diagrams: composite states and choice states (and other missing elements)

    State Machine diagrams: composite states and choice states (and other missing elements)

    The editor has a great [email protected], but I'm mostly interested in UML (Hierarchical) State Machines. The most important elements missing would be Composite States (otherwise you are limited to very simple behaviors ) and to a lesser extent the Choice Pseudostate. Other elements are missing like: adding multiple activities, custom activities (also called "internal self transitions"), Regions, Join, Fork

    feature 
    opened by vanem 3
  • WIP: Graphviz experiment

    WIP: Graphviz experiment

    PR Type

    What kind of change does this PR introduce?

    • [ ] Bug fix
    • [x] Feature
    • [ ] Chore (refactoring, formatting, local variables, other cleanup)
    • [ ] Documentation content changes

    What is the current behavior?

    Currently we have no way to automatically layout a diagram. This is a feature we probably want if we want to allow textual input and diagram generation.

    Issue Number: N/A

    What is the new behavior?

    I've been playing around with Graphviz as layout engine.

    Other information

    I've been looking at PyNSource, but the license (GPL3) does not allow us to include parts of his code.

    This feature could ease implementation of #615 and #1363.

    opened by amolenaar 0
  • GTK4: Gtk-CRITICAL Warning for GTK CSS Node Insert After

    GTK4: Gtk-CRITICAL Warning for GTK CSS Node Insert After

    Describe the bug

    When running gaphor in GTK4, I am getting a GTK Critical error for gtk_css_node_insert_after:

    Gtk-CRITICAL **: 16:05:13.330: gtk_css_node_insert_after: assertion 'previous_sibling == NULL || previous_sibling->parent == parent' failed

    To Reproduce

    Steps to reproduce the behavior:

    1. Create or open a model
    2. See Gtk-CRITICAL warning

    Expected behavior

    No warning

    Screenshots

    If applicable, add screenshots to help explain your problem.

    OS

    • [X] Linux (Please put in notes the specific distro)
    • [ ] macOS
    • [ ] Windows

    Version

    Version of Gaphor: latest main with GTK4

    Additional information

    It looks like the GTK code for this is located here: https://github.com/GNOME/gtk/blob/main/gtk/gtkcssnode.c#L820

    bug GTK4 
    opened by danyeaw 2
Releases(2.11.0)
  • 2.11.0(Jul 9, 2022)

    Changes

    πŸš€ Features

    • Make SysML Enumerations also ValueTypes @amolenaar (#1543)
    • Union types @amolenaar (#1593)
    • Todo example of use for css @Toorero (#1596)
    • Let Gaphor check for it's own health @amolenaar (#1583)
    • Add Copy/Paste for GTK4 @amolenaar (#1565)
    • GTK4 list view @amolenaar (#1516)
    • Error Reports window @amolenaar (#1529)
    • Add element to diagram by double click @amolenaar (#1528)

    πŸ› Bug Fixes

    • Transition can self-reference State @amolenaar (#1600)
    • Ensure all models are saved with UTF-8 encoding @amolenaar (#1594)
    • Fix unlinking elements from the model @amolenaar (#1567)
    • Fix issue with fully pasting a diagram @amolenaar (#1536)
    • Fix scroll speed for touch screens @amolenaar (#1533)

    🧰 Maintenance

    • Fix codeql warnings and error @danyeaw (#1581)
    • Improve text placement for Associations @amolenaar (#1570)
    • Fix instant editors for GTK4 @amolenaar (#1559)
    • Enable Additional Pre-Commit Checks @danyeaw (#1556)
    • Make dialogs work with GTK 4 @amolenaar (#1530)

    🌍 Translation

    • Hungarian translation updates @weblate (#1592)

    Thanks again to @Toorero, @amolenaar, @danyeaw, and @ovari! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.11.0-x86_64.AppImage(60.30 MB)
    gaphor-2.11.0-installer.exe(24.63 MB)
    gaphor-2.11.0-portable.exe(24.11 MB)
    Gaphor-2.11.0.dmg(38.58 MB)
  • 2.10.0(May 22, 2022)

    Changes

    πŸš€ Features

    • Codegen use all defined modeling languages @amolenaar (#1494)
    • Pin support for activity diagram @amolenaar (#1462)
    • Add Activity item to diagram @amolenaar (#1441)
    • Allow to drag and drop all elements from tree view to diagram @amolenaar (#1414)

    πŸ› Bug Fixes

    • Fix pin connections when loading a model @amolenaar (#1482)
    • Fix diagram dependency cycle @amolenaar (#1458)

    🧰 Maintenance

    • Storage cleanup @amolenaar (#1504)
    • Add Skip Duplicate Action and Release-Drafter Permissions @danyeaw (#1497)
    • Update gvsbuild and simplify syntax @danyeaw (#1466)
    • Update permissions for CodeQL GitHub Action @naveensrinivasan (#1453)
    • Include all diagram items in test model @amolenaar (#1434)
    • Fix GTK4 property page layouts @amolenaar (#1439)
    • Refactor Using Sourcery @danyeaw (#1432)
    • Use official RAAML logo in greeter @danyeaw (#1423)
    • Relation metadata @amolenaar (#1421)
    • Rename relationship connector base classes @amolenaar (#1418)
    • Design principles @amolenaar (#1417)

    🌍 Translation

    • French translation update @weblate (#1514)
    • Finnish translation updates @weblate (#1490)
    • Finnish translation update @weblate (#1468)
    • Croatian translation update @weblate (#1463)
    • Update Croatian translation @weblate (#1452)
    • Croatian translation updates @weblate (#1442)

    Thanks again to @amolenaar, @danyeaw, @milotype, @naveensrinivasan ! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.10.0.dmg(38.71 MB)
    gaphor-2.10.0-portable.exe(24.02 MB)
    gaphor-2.10.0-installer.exe(24.55 MB)
    Gaphor-2.10.0-x86_64.AppImage(60.16 MB)
    gaphor-2.10.0-py3-none-any.whl(704.79 KB)
    gaphor-2.10.0.tar.gz(877.82 KB)
  • 2.9.1(Mar 18, 2022)

  • 2.9.0(Mar 18, 2022)

    Changes

    πŸš€ Features

    • Edit newly created diagram name @amolenaar (#1405)
    • New group function for element grouping @amolenaar (#1379)
    • Simulate user behavior with Hypothesis @amolenaar (#1365)
    • Separate Control and Object Flow @amolenaar (#1353)
    • Automatically select dark mode for macOS and Windows @amolenaar (#1336)

    πŸ› Bug Fixes

    • Proxyport: update ports when proxyport is moved @amolenaar (#1403)
    • Fix AppImage Crashes on Save Command @danyeaw (#1364)
    • Extend Hypothesis Test Coverage and Fix Uncovered Bugs @amolenaar (#1374)
    • Improve reconnect for relationships @amolenaar (#1351)
    • Enable preferences shortcut @amolenaar (#1331)

    🧰 Maintenance

    • Update connection behavior for Association @amolenaar (#1357)
    • Rename Component Toolbox to Deployment @amolenaar (#1361)

    🌍 Translation

    • Update Finnish and German translations @weblate (#1371)
    • Spanish translation updates @weblate (#1350)
    • Croatian translation updates @weblate (#1342)
    • Finnish translation updates @weblate (#1334)

    Thanks again to @amolenaar, @danyeaw, @milotype! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.9.0-x86_64.AppImage(60.25 MB)
    Gaphor-2.9.0.dmg(45.27 MB)
  • 2.8.2(Jan 30, 2022)

    Changes

    πŸ› Bug Fixes

    • Fix splitting of lines @amolenaar (#1326)

    🧰 Maintenance

    • #1310 Update to Readme.md - Greeter dialog and new diagram button usage @Texopolis (#1320)

    🌍 Translation

    • Hungarian translation update @weblate (#1324)
    • Translate typeValue in properties @amolenaar (#1321)
    • Add Additional Strings for Translation @danyeaw (#1315)
    • Add Bengali translation @weblate (#1318)
    • Hungarian translation updates @weblate (#1311)
    • Update Finnish and Spanish translations @weblate (#1307)

    Thanks again to @Texopolis, @amolenaar, @danyeaw, @oscfdezdz, @ovari, Jiri GrΓΆnroos, and Saptarshi Mondal! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.8.2-x86_64.AppImage(50.05 MB)
    gaphor-2.8.2-installer.exe(30.61 MB)
    gaphor-2.8.2-portable.exe(30.08 MB)
    Gaphor-2.8.2.dmg(45.03 MB)
  • 2.8.1(Jan 19, 2022)

    Changes

    πŸš€ Features

    • Simplify the Greeter Dialogs @danyeaw (#1301)

    πŸ› Bug Fixes

    • Fix Gaphor fails to load in German, update Hungarian and Finnish translations @weblate (#1298)

    🧰 Maintenance

    • Check for placeholder errors in translations @amolenaar (#1302)

    🌍 Translation

    • Chinese (Simplified) translation updates @weblate (#1303)

    Thanks again to @amolenaar, @danyeaw, @lizhuoqi, @ovari, and Jiri GrΓΆnroos! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.8.1-x86_64.AppImage(50.05 MB)
    gaphor-2.8.1-installer.exe(30.61 MB)
    gaphor-2.8.1-portable.exe(30.07 MB)
    Gaphor-2.8.1.dmg(45.83 MB)
  • 2.8.0(Jan 15, 2022)

    Changes

    πŸš€ Features

    • Add UML, SysML, and RAAML Templates @danyeaw (#1279)
    • Stereotypes for ItemFlow properties @amolenaar (#1211)
    • Full Copy/Paste of model elements @amolenaar (#1262)
    • Add official OMG/SysML logos @amolenaar (#1258)
    • Allow for deleting elements in the tree view @amolenaar (#1250)
    • Fix AppImage GLIBC Error on Older Distro Versions @danyeaw (#1228)
    • Start a new model from a template @amolenaar (#1234)
    • Diagram types @amolenaar (#1216)
    • Improve the welcoming experience @amolenaar (#1230)
    • Allocation of structural types to swimlane partitions @amolenaar (#1214)
    • A Magnet-tool @amolenaar (#1208)
    • Notification when model elements are automatically removed @amolenaar (#1207)
    • Store toolbox settings per modeling language @amolenaar (#1215)
    • Grow item when an item is dropped on it @amolenaar (#1203)
    • Add "values" compartment to Block item @amolenaar (#1198)
    • Support SysML Item flow @amolenaar (#1192)
    • Empty square bracket notation @amolenaar (#1186)
    • New code generator @amolenaar (#1170)

    πŸ› Bug Fixes

    • Fix Sequence diagram loading when message is close to lifeline body @amolenaar (#1289)
    • Load files directly from macOS Finder @amolenaar (#1281)
    • Fix positions of nested items during undo @amolenaar (#1266)
    • Fork node loading @amolenaar (#1252)
    • Fix FileNotFoundError when running packaged app @danyeaw (#1244)
    • Fix ownership of Connector, ProxyPort, and ItemFlow @amolenaar (#1226)
    • Set a minimal height for compartments @amolenaar (#1225)

    🧰 Maintenance

    • Use symbolic close icon for notebook tabs @mathiascode (#1295)
    • Improve GTK4 compatibility @amolenaar (#1106)
    • Improve clarity of syntax for attributes and operations using a popover @amolenaar (#1242)
    • Clean up Toolbox @amolenaar (#1237)
    • Update to latest gvsbuild, switch to wingtk repo @danyeaw (#1229)
    • Remove some legacy code @amolenaar (#1200)
    • Invert association creation @amolenaar (#1202)
    • Ensure model consistency on save @amolenaar (#1194)
    • Core as a separate ModelingLanguage @amolenaar (#1181)

    🌍 Translation

    • Spanish translations updates @weblate (#1292)
    • Spanish translation updates @weblate (#1288)
    • Finnish translation updates @weblate (#1287)
    • Hungarian translation updates @weblate (#1284)
    • Dutch and Hungarian translation updates @weblate (#1274)
    • Portuguese (Brazil) translation updates @weblate (#1269)
    • Updates to Brasilian translation @weblate (#1267)
    • Finnish translation update for Help in PropertyPage @weblate (#1257)
    • Hungarian and Galician translation updates @weblate (#1254)
    • Croatian translation updates @weblate (#1218)
    • Spanish, Croatian, and Finnish translation updates @weblate (#1205)
    • Update Espanian translations @weblate (#1196)
    • Chinese translation updates @weblate (#1187)
    • Add Chinese (Simplified) translation @weblate (#1182)
    • Updates to German and Hungarian translations @weblate (#1174)
    • Add German translation file @weblate (#1173)

    Thanks again to @Lutra-Fs, @amolenaar, @danyeaw, @frandieguez, @gbrlgian, @jischebeck, @jy1263, @mathiascode, @milotype, @oscfdezdz, @ovari, Cesar Iglesias, and Jiri GrΓΆnroos!! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.8.0-x86_64.AppImage(50.06 MB)
    gaphor-2.8.0-installer.exe(30.60 MB)
    gaphor-2.8.0-portable.exe(30.07 MB)
    Gaphor-2.8.0.dmg(45.83 MB)
  • 2.7.1(Dec 2, 2021)

    Changes

    πŸš€ Features

    • No GTK required anymore for generating docs @amolenaar (#1160)

    🧰 Maintenance

    • Fix Lines Don't Disconnect When Moved (gaphor/[email protected])
    • Update Python to 3.10.0 @danyeaw (#1163)
    • Update gvsbuild and poetry version @danyeaw (#1164)

    🌍 Translation

    • Spanish translation updates @weblate (#1165)

    Thanks again to @amolenaar, @danyeaw, @oscfdezdz! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.7.1-x86_64.AppImage(57.38 MB)
    gaphor-2.7.1-installer.exe(30.61 MB)
    gaphor-2.7.1-portable.exe(30.07 MB)
    Gaphor-2.7.1.dmg(45.68 MB)
  • 2.7.0(Nov 26, 2021)

    Changes

    πŸš€ Features

    • Use Jedi for autocomplete in the Python Console @amolenaar (#1153)
    • Add option to show underlying DecisionNode type @amolenaar (#1144)
    • Update documentation to use new Sphinx extension @amolenaar (#1143)
    • Sphinx directive for embedding Gaphor models into docs @amolenaar (#1134)
    • Allow messages to move freely on Lifeline and ExecutionSpec @amolenaar (#1121)
    • Add Reflexive Message item for Interactions @amolenaar (#1123)
    • Pop-up element name editor on creation of a new element @amolenaar (#1116)
    • InformationFlow for Connectors @amolenaar (#1103)

    πŸ› Bug Fixes

    • Swap relationship direction for Generalization, Dependency, Import, Include, and Extend @amolenaar (#1129)
    • Fix lifeline ordering when not all items are linked in a diagram @amolenaar (#1155)
    • Allow generalizations to be reused @amolenaar (#1149)
    • Fix Windows build by updating to Python 3.9.9 @danyeaw (#1142)
    • Allow auto-generated elements (Activity, State Machine, Interaction, Region) to be removed @amolenaar (#1118)
    • Emit events for Diagram.ownedPresentation and Presentation.diagram after element creation @amolenaar (#1088)

    🧰 Maintenance

    • Add option to show underlying DecisionNode type @amolenaar (#1144)
    • Add documentation dependencies to pyproject.toml @amolenaar (#1138)
    • Move enumeration layout to UML.classes @amolenaar (#1140)
    • Rename packaging to _packaging @amolenaar (#1136)
    • Remove names for initial/final nodes @amolenaar (#1130)
    • Update to latest gvsbuild @danyeaw (#1120)
    • Update to PyInstaller 4.6 @danyeaw (#1109)
    • Add gtksourceview to Windows docs @danyeaw (#1108)
    • Fix Python 3.10 warnings @amolenaar (#1105)
    • Fix indention in Style Sheet docs @vanillajonathan (#1091)

    🌍 Translation

    • Finnish translation updates @weblate (#1146)
    • Hungarian translation updates @weblate (#1133)
    • Hungarian translation updates @weblate (#1128)
    • Expand the number of strings translated @amolenaar (#1125)
    • Update Croatian translation @weblate (#1093)
    • Spanish, Japanese, Finnish, and Croatian translation updates @weblate (#1092)

    Thanks again to @amolenaar, @danyeaw, @fu7mu4, @milotype, @oscfdezdz, @ovari, @vanillajonathan, Jiri GrΓΆnroos! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.7.0-x86_64.AppImage(56.29 MB)
    gaphor-2.7.0-installer.exe(30.57 MB)
    gaphor-2.7.0-portable.exe(30.04 MB)
    Gaphor-2.7.0.dmg(45.56 MB)
  • 2.6.5(Oct 19, 2021)

    πŸš€ Features

    • Update Style Sheet Editor to be a Code Editor @danyeaw (#1029)

    πŸ› Bug Fixes

    • Show relationships on top of other elements @amolenaar (#1084)

    🧰 Maintenance

    • Remove unneeded Linux CI build dependencies @danyeaw (#1086)
    • Update PyGObject @danyeaw (#1018)
    • Upgrade Poetry to 1.1.11 @amolenaar (#1078)

    🌍 Translation

    • Spanish and Japanese translation updates @weblate (#1074)
    • Japanese translation updates @weblate (#1085)
    • Update Hungarian translations @weblate (#1082)
    • Add initial Japanese translation @weblate (#1079)
    • Update strings to improve ability to translate @danyeaw (#1067)
    • Add Hungarian button tooltip translations @weblate (#1072)
    • Croatian and Hungarian translation updates @weblate (#1068)
    • Update Spanish translation @weblate (#1066)
    • Hungarian translation updates @weblate (#1065)

    Thanks again to @amolenaar, @danyeaw, @fu7mu4, @milotype, @oscfdezdz, @ovari, and Cesar Iglesias! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.6.5-x86_64.AppImage(54.81 MB)
    gaphor-2.6.5-installer.exe(29.31 MB)
    gaphor-2.6.5-portable.exe(28.78 MB)
    Gaphor-2.6.5.dmg(43.95 MB)
  • 2.6.4(Oct 4, 2021)

  • 2.6.3(Oct 3, 2021)

    Changes

    πŸ› Bug Fixes

    • Fix about dialog logo @amolenaar (#1042)

    🧰 Maintenance

    • Remove importlib_metadata @amolenaar (#1052)
    • Simpler services @amolenaar (#1050)
    • Up typing compliance to 3.9, and remove typing_extensions @amolenaar (#1040)

    🌍 Translation

    • Finnish translation updates @weblate (#1056)
    • Add translation of more elements @danyeaw and @amolenaar (#1049)

    Thanks again to @amolenaar, @ovari, and @danyeaw! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.6.3-x86_64.AppImage(54.23 MB)
    gaphor-2.6.3-installer.exe(28.77 MB)
    gaphor-2.6.3-portable.exe(28.26 MB)
    Gaphor-2.6.3.dmg(43.32 MB)
  • 2.6.2(Oct 2, 2021)

    Changes

    πŸ› Bug Fixes

    • Fix localization in UI files @amolenaar (#1031)
    • Update icons to render as paths @amolenaar (#1030)

    🌍 Translation

    • Hungarian and Finnish translation updates @weblate (#1035)
    • Spanish, Portuguese (Br), and Hungarian Translation Updates @weblate (#1032)

    Thanks again to @JonnathanRiquelmo, @amolenaar, @danyeaw, @oscfdezdz, @ovari, and Jiri GrΓΆnroos! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.6.2-x86_64.AppImage(54.26 MB)
    gaphor-2.6.2-installer.exe(28.79 MB)
    gaphor-2.6.2-portable.exe(28.28 MB)
    Gaphor-2.6.2.dmg(43.34 MB)
  • 2.6.1(Sep 25, 2021)

    Changes

    πŸš€ Features

    • Display guard conditions in square brackets @amolenaar (#990)
    • Use flat buttons in the header bar @amolenaar (#991)

    πŸ› Bug Fixes

    • Fix Gaphor always runs in English despite system language setting @amolenaar (#1025)
    • Fix parameter is incorrect error with ";;" in path @danyeaw (#1022)
    • Improve inline editor undo/redo behavior @amolenaar (#1016)
    • Fixed closing of about dialog @sz332 (#996)
    • Fix fork/join node incorrectly rotates @amolenaar
    • Fix wrong label is displayed when object node ordering is enabled @amolenaar
    • Fix drag and drop of elements does not work on diagrams @amolenaar

    🧰 Maintenance

    • Add VSCode debug instructions for Windows @sz332 (#1010)
    • Rename usage of Partitions to Swimlanes @amolenaar (#1013)
    • Packaging folder is not a Python package @amolenaar (#992)

    🌍 Translation

    • Update Dutch and Hungarian Translations @weblate (#1026)
    • Croatian translation updates @weblate (#988)

    Thanks again to @amolenaar, @danyeaw, @milotype, @ovari, and @sz332! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.6.1-x86_64.AppImage(54.26 MB)
    gaphor-2.6.1-installer.exe(28.79 MB)
    gaphor-2.6.1-portable.exe(28.28 MB)
    Gaphor-2.6.1.dmg(43.33 MB)
  • 2.6.0(Sep 14, 2021)

    Changes

    πŸš€ Features

    • Add information flows to UML model @amolenaar (#907)
    • Improve zoom and pan for mouse @amolenaar (#913)

    πŸ› Bug Fixes

    • Swap Generalization Arrow Directions @danyeaw (#935)
    • Fix TypeError for Protocols cannot be instantiated @danyeaw (#967)
    • Fix Doc Build Errors and Upgrade to MyST-Parser and tomli @danyeaw (#964)
    • Add extra rules to avoid cyclic references @amolenaar (#895)
    • Fix disappearing elements from tree view on Windows @amolenaar (#882)

    🧰 Maintenance

    • Fix macOS Codesign and Refactor CI @danyeaw (#969)
    • Convert CI from mingw to gvsbuild @danyeaw (#912)
    • Rebuild translation portable objects @danyeaw (#925)
    • Fix typo in UML.gaphor @eltociear (#931)
    • Upgrade Windows Build Script from Bash to Python @danyeaw (#903)
    • Upgrade PyInstaller to Version 4.4 @danyeaw (#904)
    • Refactor class property pages in to multiple modules @danyeaw (#869)
    • Python 3.9 is now default in MSYS2 @danyeaw (#902)
    • Dependency updates @mrmonkington (#893)
    • Add Docs for Building GTK for Windows with gvsbuild @danyeaw (#885)
    • Developer documentation tweaks @mrmonkington (#892)
    • Fix Windows Dev Env Docs @danyeaw (#873)
    • Enable pyupgrade and use Python 3.9 in Windows @danyeaw (#875)

    🌍 Translation

    • Add Galician translation @weblate (#979)
    • Add a new Korean translation @darkcircle (#959)
    • Update Hungarian, Finnish, & Spanish Translations @weblate (#958)
    • Update the README on How to Translate the Flatpak String @ovari (#950)
    • Translations from UI files @amolenaar (#948)
    • Add Finnish and update Spanish and Hungarian Translations @weblate (#944)
    • Add Hungarian Translation @weblate (#939)

    Thanks again to @amolenaar, @danyeaw, @darkcircle, @eltociear, @frandieguez, @mrmonkington, @oscfdezdz, @ovari, J. Lavoie, Jiri GrΓΆnroos! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.6.0-x86_64.AppImage(54.25 MB)
    gaphor-2.6.0-installer.exe(28.79 MB)
    gaphor-2.6.0-portable.exe(28.28 MB)
    Gaphor-2.6.0.dmg(43.43 MB)
  • 2.5.1(Jul 5, 2021)

  • 2.5.0(Jun 30, 2021)

    Changes

    πŸš€ Features

    • Feature/element notes @amolenaar (#863)
    • Add Initial Support for STPA @danyeaw (#781)
    • Allow diagrams under all elements @amolenaar (#825)

    πŸ› Bug Fixes

    • Fix delete and undo of a diagram @amolenaar (#827)
    • Rename C4ContainerDatabaseItem to C4DatabaseItem @amolenaar (#830)

    🧰 Maintenance

    • Cleanup model loading @amolenaar (#860)
    • Diagram items in element factory @amolenaar (#851)
    • Organize element events @amolenaar (#844)
    • Link toolbox and diagrams @amolenaar (#836)

    Thanks again to @amolenaar, @danyeaw! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.5.0-x86_64.AppImage(54.26 MB)
    gaphor-2.5.0-installer.exe(28.62 MB)
    gaphor-2.5.0-portable.exe(28.35 MB)
    Gaphor-2.5.0.dmg(41.95 MB)
  • 2.4.2(May 23, 2021)

    Changes

    πŸ› Bug Fixes

    • Property page should only set navigability if both ends are connected @amolenaar (#820)

    🧰 Maintenance

    • Sign only builds on the master branch @amolenaar (#826)
    • Improve drag and drop for TreeView @amolenaar (#812)
    • Add GTK4 build on macos @amolenaar (#808)
    • GTK 4 @amolenaar (#756)
    • Add tooltips for "A"/"S" in editor @amolenaar (#805)
    • Upload Linux assets during release @danyeaw (#787)

    Thanks again to @amolenaar, @danyeaw, @vanillajonathan! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.4.2-x86_64.AppImage(54.34 MB)
    gaphor-2.4.2-installer.exe(28.60 MB)
    gaphor-2.4.2-portable.exe(28.32 MB)
    Gaphor-2.4.2.dmg(41.93 MB)
  • 2.4.1(May 11, 2021)

  • 2.4.0(May 1, 2021)

    Changes

    πŸš€ Features

    • Add Support for DataType, ValueType, Primitive, and Enumeration @danyeaw (#724)
    • Focus already opened model @amolenaar (#711)
    • Add Support for Containment Relationship @danyeaw (#707)
    • Restore window state when diagram is loaded @amolenaar (#717)

    🧰 Maintenance

    • Update Spanish translation @oscfdezdz (#767)
    • Upgrade PyInstaller to version 4.3 @danyeaw (#743)
    • Gtk4 toolbox @amolenaar (#741)
    • Add regression tests @amolenaar (#734)
    • Remove the New From Template option @amolenaar (#730)
    • Fix build fails when GitHub Actions secrets are not available @danyeaw (#719)

    Thanks again to @amolenaar, @danyeaw, @oscfdezdz! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    gaphor-2.4.0-installer.exe(28.53 MB)
    gaphor-2.4.0-portable.exe(28.26 MB)
    Gaphor-2.4.0.dmg(43.55 MB)
    Gaphor-2.4.0-x86_64.AppImage(54.24 MB)
  • 2.3.2(Mar 30, 2021)

  • 2.3.1(Mar 28, 2021)

  • 2.3.0(Mar 20, 2021)

    Changes

    πŸš€ Features

    • Upgrade to Gaphas 3.1 @amolenaar (#678)
    • Add Fault Tree Analysis Toolbars and Elements @danyeaw (#664)
    • Remove EditableText shape @amolenaar (#685)
    • Croatian translation @milotype (#673)
    • C4 model @amolenaar (#645)
    • Update the Safety Profile to RAAML @danyeaw (#627)
    • Add FTA Toolbar Icons for RAAML @danyeaw (#651)

    🧰 Maintenance

    • Simplify presentation update method @amolenaar (#696)
    • Build with latest Poetry (1.1.5) @amolenaar (#688)
    • Remove venv file and update documentation @amolenaar (#662)
    • UML model updates @amolenaar (#630)
    • Convert tests to pytest @TiemenSch (#658)

    Thanks again to @TiemenSch, @amolenaar, @danyeaw, @milotype, @blippost, @freezed-or-frozen, @liferooter ! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    gaphor-2.3.0-installer.exe(28.44 MB)
    gaphor-2.3.0-portable.exe(28.14 MB)
    Gaphor-2.3.0.dmg(43.35 MB)
  • 2.2.2(Feb 7, 2021)

    Changes

    πŸš€ Features

    • Drop and gray out style @amolenaar (#638)

    πŸ› Bug Fixes

    • Order undo events @amolenaar (#636)

    🧰 Maintenance

    • Cleanup inline styles @amolenaar (#639)
    • Define Gtk version once, at the top of the package @amolenaar (#624)
    • Speed up rendering by determining gray-out colors upfront @amolenaar (#629)

    Thanks again to @amolenaar, @danyeaw, and @samirodj! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    gaphor-2.2.2-installer.exe(28.39 MB)
    gaphor-2.2.2-portable.exe(28.09 MB)
    Gaphor-2.2.2.dmg(42.45 MB)
    Gaphor-2.2.2-x86_64.AppImage(54.20 MB)
    gaphor-2.2.2-py3-none-any.whl(521.30 KB)
    gaphor-2.2.2.tar.gz(331.65 KB)
  • 2.2.0(Jan 23, 2021)

    Changes

    πŸš€ Features

    • Connect start of line when placed inside an element @amolenaar (#616)
    • Highlight item when a connection can be established @amolenaar (#610)
    • Allow spaces in attribute and operation name and type @amolenaar (#608)
    • Release Gaphor as an AppImage @danyeaw (#581)
    • Improve Packaging and Sign / Notarize macOS App @danyeaw (#539)
    • In element select @amolenaar (#603)
    • Gray out unconnectable elements @amolenaar (#557)
    • app icon: new diagram metaphor @bertob (#524)

    πŸ› Bug Fixes

    • Fix association copy paste @amolenaar (#607)
    • Fix element dispatcher warnings @amolenaar (#586)
    • Create style sheet on load and on new model @amolenaar (#583)

    🧰 Maintenance

    • Fix undo manager @amolenaar (#588)
    • Everything transactional @amolenaar (#582)
    • Fix misspelled words in docs @freddii (#579)
    • Presentation instantly updates matrix_i2c @amolenaar (#574)
    • Presentation requires diagram @amolenaar (#572)
    • Use associations for diagram and parent/child relationships @amolenaar (#567)
    • Slowly move towards event controllers @amolenaar (#439)
    • Gaphas 3 support @amolenaar (#501)
    • Eradicate commented out code @danyeaw (#553)
    • Add release checklist @danyeaw (#538)
    • Remove PyInstaller hooks fixed upstream @danyeaw (#535)
    • Fix test discovery issue in VSCode @amolenaar (#532)

    Thanks again to @amolenaar, @bertob, @danyeaw, @freddii! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    gaphor-2.2.0-installer.exe(28.39 MB)
    gaphor-2.2.0-portable.exe(28.09 MB)
    Gaphor-2.2.0.dmg(42.53 MB)
    Gaphor-2.2.0-x86_64.AppImage(54.13 MB)
    gaphor-2.2.0-py3-none-any.whl(520.80 KB)
    gaphor-2.2.0.tar.gz(331.27 KB)
  • 2.1.1(Dec 1, 2020)

  • 2.1.0(Nov 29, 2020)

    Changes

    πŸš€ Features

    • Improve Swimlane Behavior @danyeaw (#430)
    • In-app notification @amolenaar (#478)
    • Improve file load/save dialogs @amolenaar (#469)
    • Use a global copy buffer @amolenaar (#466)
    • Auto select in tree view @amolenaar (#464)
    • State machine namespacing @amolenaar (#461)
    • Activity namespacing @amolenaar (#453)
    • Ownership for interactions @amolenaar (#447)
    • Dependency namespace @amolenaar (#440)
    • Show all elements in tree view @amolenaar (#419)

    πŸ› Bug Fixes

    • Improve file load/save dialogs @amolenaar (#469)
    • Update diagram when moved @amolenaar (#465)
    • Fix copy/paste for Transition @amolenaar (#463)
    • Fix PyInstaller Packaging Issues @danyeaw (#424)

    🧰 Maintenance

    • Fix macos build @amolenaar (#502)
    • Update it.po @albanobattistella (#499)
    • Update CI build @amolenaar (#495)
    • Fix LGTM/CodeQL issues @amolenaar (#484)
    • Use msys2-setup GitHub Action for Windows Builds @amolenaar (#475)
    • Refactor toolboxes to reduce duplication @danyeaw (#462)
    • Fix MSYS2 timeout due to mirror down @danyeaw (#477)
    • Fix shell syntax issues and enable shellcheck pre-commit @danyeaw (#454)
    • Fix is directory error with importlib resources in Python 3.9 @danyeaw (#449)
    • Describe the connect protocol in a chart @amolenaar (#450)
    • Models in docs @amolenaar (#448)
    • Shorten timeout during build stages @danyeaw (#444)
    • Split namespace @amolenaar (#443)
    • Move Diagrams component to it's own module @amolenaar (#435)
    • Automatically Format Docstrings @danyeaw (#428)
    • Cleanup session lifecycle @amolenaar (#431)

    Thanks again to @albanobattistella, @amolenaar, and @danyeaw! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    gaphor-2.1.0-installer.exe(27.42 MB)
    gaphor-2.1.0-portable.exe(27.39 MB)
    Gaphor-2.1.0.dmg(76.87 MB)
  • 2.0.1(Aug 28, 2020)

    Changes

    πŸš€ Features

    • Sign using certificate during CI build @danyeaw (#397)

    πŸ› Bug Fixes

    • Fix issue where copy/paste + delete of original association causes association ends to be removed @amolenaar (#411)
    • Live editing for inline editors (popovers) @amolenaar (#415)
    • Fix #408 where undo on diagram items breaks the model @amolenaar (#410)
    • Fix UML composite and shared association @danyeaw (#398)
    • Fix Gaphor Launching Fails in macOS @amolenaar (#394)

    🧰 Maintenance

    • Update pre-commit hook versions @danyeaw (#421)
    • Update readme @amolenaar (#418)
    • Run console tests as well @amolenaar (#416)
    • Implement some simplifications in the data model @amolenaar (#391)
    • Update to pytest 6.0 @danyeaw (#392)

    Thanks again to @amolenaar and @danyeaw! πŸŽ‰

    Source code(tar.gz)
    Source code(zip)
    Gaphor-2.0.1.dmg(75.35 MB)
    gaphor-2.0.1-portable.exe(30.21 MB)
    gaphor-2.0.1-installer.exe(30.29 MB)
Owner
Gaphor
Gaphor is the simple modeling tool
Gaphor
Python Indent - Correct python indentation in Visual Studio Code.

Python Indent Correct python indentation in Visual Studio Code. See the extension on the VSCode Marketplace and its source code on GitHub. Please cons

Kevin Rose 52 Jul 29, 2022
cottonformation is a Python tool providing best development experience and highest productivity

Welcome to cottonformation Documentation Full Documentatioin Here cottonformation is a Python tool providing best development experience and highest p

Sanhe 6 Jul 8, 2022
Spyder - The Scientific Python Development Environment

Spyder is a powerful scientific environment written in Python, for Python, and designed by and for scientists, engineers and data analysts. It offers a unique combination of the advanced editing, analysis, debugging, and profiling functionality of a comprehensive development tool with the data exploration, interactive execution, deep inspection, and beautiful visualization capabilities of a scientific package.

Spyder IDE 7.1k Aug 14, 2022
notebookJS: seamless JavaScript integration in Python Notebooks

notebookJS enables the execution of custom JavaScript code in Python Notebooks (Jupyter Notebook and Google Colab). This Python library can be useful for implementing and reusing interactive Data Visualizations in the Notebook environment.

jorgehpo 139 Jun 25, 2022
Mu - A Simple Python Code Editor

A small, simple editor for beginner Python programmers. Written in Python and Qt5.

Mu 1.2k Aug 5, 2022
A GitHub Action hosted Python IDE!

What is this ? This is an IDE running on GitHub Actions which can help in..... Running small snippets. Running codes whenever PC is not available and

Jainam Oswal 18 Jul 19, 2022
Python 3 patcher for Sublime Text v4107-4114 Windows x64

sublime-text-4-patcher Python 3 patcher for Sublime Text v4107-4114 Windows x64 Credits for signatures and patching logic goes to https://github.com/l

null 139 Aug 4, 2022
Python IDE or notebook to generate a basic Kepler.gl data visualization

geospatial-data-analysis [readme] Use this code in your Python IDE or notebook to generate a basic Kepler.gl data visualization, without pre-configura

null 3 Oct 29, 2021
A Python code editor that looks like GNU Emacs.

?? WARNING ?? : Under development... Testing is not recommended! Welcome to Snake Editor! Hi! This is our repository, we are here to present our new p

Marcio Dantas 5 May 20, 2022
This is code for IDLE python/ Magic8Ball Code

Magic8Ball this is code for IDLE python/ Magic8Ball Code this code is for beginers i hope you can learn code form this don't ever be a script kiddie a

null 1 Nov 5, 2021
Live coding in Python with PyCharm, Emacs, Sublime Text, or even a browser

Live Coding in Python Visualize your Python code while you type it in PyCharm, Emacs, Sublime Text, or even your browser. To see how to use one of the

Don Kirkby 249 Jul 23, 2022
An amazing simple Python IDE for developers!

PyHub An amazing simple Python IDE for developers! Get ready to compile and run your code in the most simplest and easiest IDE of the ancient world! T

Aniket Bhattacharjee 1 Mar 25, 2022
Automatically detect obfuscated code and other state machines

Scripts to automatically detect obfuscated code and state machines in binaries.

Aaron 106 Aug 1, 2022
πŸ’» Open recent VS Code folders and files using Ulauncher

ulauncher-vscode-recent ?? Open recent VS Code folders and files using Ulauncher. Quickly open recently-opened VS Code project directories and files.

Mihir Chaturvedi 12 Jun 25, 2022
A Sublime Text package that allows a user to view all the available core/plugin commands for Sublime Text and Sublime Merge, along with their documentation/source.

CommandsBrowser A Sublime Text package that allows a user to view all the available core/plugin commands for Sublime Text and Sublime Merge, along wit

Sublime Instincts 24 Jul 23, 2022
A way to integrate Latex, VSCode, and Inkscape in macOS. Adopted the whole workflow from Gilles Castel.

VSCode-LaTeX-Inkscape A way to integrate LaTeX, VSCode, and Inkscape in macOS Abstract I use LaTeX heavily in past two years for both academic work an

Pingbang Hu 42 Aug 9, 2022
Gaphor is the simple modeling tool

Gaphor Gaphor is a UML and SysML modeling application written in Python. It is designed to be easy to use, while still being powerful. Gaphor implemen

Gaphor 1.1k Aug 6, 2022
Gaphor is the simple modeling tool

Gaphor Gaphor is a UML and SysML modeling application written in Python. It is designed to be easy to use, while still being powerful. Gaphor implemen

Gaphor 1.1k Aug 14, 2022
Concept Modeling: Topic Modeling on Images and Text

Concept is a technique that leverages CLIP and BERTopic-based techniques to perform Concept Modeling on images.

Maarten Grootendorst 106 Jul 15, 2022
ArinjoyTheDev 1 Jul 17, 2022
A python-image-classification web application project, written in Python and served through the Flask Microframework

A python-image-classification web application project, written in Python and served through the Flask Microframework. This Project implements the VGG16 covolutional neural network, through Keras and Tensorflow wrappers, to make predictions on uploaded images.

Gerald Maduabuchi 16 Jul 19, 2022
Trame let you weave various components and technologies into a Web Application solely written in Python.

Trame Trame aims to be a framework for building interactive applications using a web front-end in plain Python. Such applications can be used locally

Kitware, Inc. 58 Aug 4, 2022
This application explain how we can easily integrate Deepface framework with Python Django application

deepface_suite This application explain how we can easily integrate Deepface framework with Python Django application install redis cache install requ

Mohamed Naji Aboo 3 Apr 18, 2022
Wraps any WSGI application and makes it easy to send test requests to that application, without starting up an HTTP server.

WebTest This wraps any WSGI application and makes it easy to send test requests to that application, without starting up an HTTP server. This provides

Pylons Project 323 Aug 9, 2022
πŸ’» Algo-Phantoms-Backend is an Application that provides pathways and quizzes along with a code editor to help you towards your DSA journey.πŸ“°πŸ”₯ This repository contains the REST APIs of the application.✨

Algo-Phantom-Backend ?? Algo-Phantoms-Backend is an Application that provides pathways and quizzes along with a code editor to help you towards your D

Algo Phantoms 44 Jul 30, 2022
A CLI application for storing contacts as a csv file written in Python.

Contacter A CLI application for storing contacts as a csv file written in Python. You can use this to save your contacts with a special relations tag

nostalgicnerdpenguin 1 Oct 23, 2021
A command line application, written in Python, for interacting with Spotify.

spotify-py-cli A command line application, written in Python, for interacting with Spotify. The primary purpose behind developing this app was to gain

Drew Loukusa 0 Oct 7, 2021
A simple terminal-based localhost chat application written in python

Chat House A simple terminal-based localhost chat application written in python How to Use? Clone the repo git clone https://github.com/heksadecimal/c

Heks 10 Nov 9, 2021