I'm trying to learn how to use GEF/ZEST but the examples from the github page don't seem to be enough.

I want to do something like this:

Basically I need the following requirements:
- Have several inputs/outputs for each block/node. These multiple inputs/outputs need to be distinguishable between them
-Paint one block with different colors to show that the execution of said block is at 50%, 70%, etc.
-Overall I'm trying to replicate the Simulink capabilities to some extent.

I think GEF can give me everything that I need, however from the examples I miss some of the requirements and I have no idea on how to start implementing them (even by looking at the GEF/ZEST documentation).
Thus, can anyone give me some pointers and/or share more complex projects using GEF?

I will take some time to answer forum questions tomorrow. In doing so, I will take a closer look and provide you with an appraisal at least.

In order to get an impression of the possibilities of GEF w.r.t. your requirements, you can take a look at the YAKINDU Model Viewer, a tool for navigating Simulink diagrams, which is available for download on the itemis website (a demo application is available for free): https://www.itemis.com/en/yakindu/model-viewer/

Unfortunately, something as sophisticated as the Model Viewer is not available as an example. However, multiple distinguishable edges between nodes is supported by default. However, the port locations are not provided by GEF. However, you can, for example, integrate ELK and use it for laying out nodes, edges, labels, and ports.

If you have more questions w.r.t. port positioning, we can discuss them here.

I decided and will use GEF! I will probably have a lot of doubts during the development phase and I will post them in this forum. Hope you guys can help me with them :D

With regards to your comment, is ELK the Elastic Stack library? I'm asking since it's the only library appearing in my Google searches and yet it doesn't seem to fit the "layout our nodes, edges, labels and ports" description.

I lost already 3 days trying to integrate ELK within GEF without success.
The support is horrible and there are 0 projects using GEF5 (all of the existing GEF+ELK use org.eclipse.gef.request, org.eclipse.gef.EditPart, org.eclipse.gef.GraphicalEditPart which GEF5 doesn't have anymore).

I'm generating a correct "LayoutMapping mapping" where I can see my nodes and connections, but then I'm not able to apply the Layout correctly. I mean, my GEF graph doesn't suffer any change. Can you provide me with a simple example of a GEF5+ELK project?

Yes, I did. I'm trying to use ELK because of ports, not the layout. I need each model to have distinguishable (with different selectable labels) ports and Matthias told me before that with GEF alone this is not possible.