What skills are required to develop graphical editor? #367
-
I'm a Java developer who has minimal Javascript skills/knowledge. This project attracted me because it appeared that I could perhaps generate a graphical editor application with minimal JS skills - create a GLSP server in Java, launch a premade GLSP client (like Sprotty) and I would be good to go. In looking at the minimal sample, it looks like I would still need to customize the client in order achieve my goal. Is this correct? What language skills are typically required in order to develop a custom editor? I was thinking I might be able to get away with just Java and perhaps some SVG but now that I'm digging deeper, I am thinking maybe not. original thread by Rob McDougall |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments
-
Hi Rob, You'll need at least some basic Typescript skills for the client side, and know how to build the project with Yarn (This is documented on the project README, so it might be sufficient). It doesn't take much to create a simple client, but you still need to be able to configure the client (Mapping Node types to Node views, and selecting the modules you want to reuse from GLSP) However, it may be sufficient to copy the 'GLSP Minimal example' (Workflow example) and simply adapt the Node types-to-view mappings. In this case, Typescript knowledge is not required. In this Workflow example, most of the client configuration is defined in di.config.ts: Everything else is in this Workflow example is boilerplate for configuring/building the package; so you'd just have to edit the IDs and Labels to match your language. Then, you need to decide how you want to integrate this graphical editor package. For a standalone editor, you can copy/adapt the workflow-standalone package: In any case, I'd recommend to take the time to learn at least the basics of Typescript and Node packages, so you can at least understand the client code structure. And this knowledge will be absolutely mandatory if you want to provide some custom behavior, as you'll need to implement and configure new Actions/Command on the client side. |
Beta Was this translation helpful? Give feedback.
-
[Rob McDougall] Thank you so much for your reply. I will take your advice and do some additional reading before starting with the minimal example. |
Beta Was this translation helpful? Give feedback.
-
[Jonas Helming] In case you need additional help, please note, that there is professional support for Eclipse GLSP: |
Beta Was this translation helpful? Give feedback.
Hi Rob,
You'll need at least some basic Typescript skills for the client side, and know how to build the project with Yarn (This is documented on the project README, so it might be sufficient). It doesn't take much to create a simple client, but you still need to be able to configure the client (Mapping Node types to Node views, and selecting the modules you want to reuse from GLSP)
However, it may be sufficient to copy the 'GLSP Minimal example' (Workflow example) and simply adapt the Node types-to-view mappings. In this case, Typescript knowledge is not required.
In this Workflow example, most of the client configuration is defined in di.config.ts:
https://github.com/eclipse-glsp/glsp-c…