Do you want to build a modern, web-based diagram editor, maybe integrated into Eclipse Theia or VS Code? Are you wondering how to replace GMF or similar frameworks in your cloud-based tool and how to migrate existing diagram editors to the web? Then join our talk and learn about the Eclipse Graphical Language Server Platform (GLSP)!
Eclipse GLSP is an open-source framework for efficiently developing graphical diagram editors for web- and cloud-based tools. GLSP adapts the advantages of LSP to graphical diagram editors. Thus, it clearly encapsulates the underlying business logic of your graphical language on a server, which communicates over a defined protocol with one or more diagram clients. This architecture not only allows for a better separation of concerns, it also makes your diagram implementation more easily transferable to other technologies in the future and greatly facilitates the migration of existing diagram implementations (e.g. GMF- or Sirius-based editors) to a modern UI platform (HTML5, CSS3, and SVG).
In this talk, we introduce the basic architecture of GLSP and demonstrate with common examples of how the framework can efficiently support the creation of custom diagram editors. This includes examples available as open-source as well as industrial applications of GLSP. As Eclipse GLSP moved to Eclipse only about a year ago and has been very actively developed since then, we will spend time specially focusing on more recently added features of GLSP including:
- GLSPs integration with Theia, such as native context menus, problem markers, navigation, …
- Copy & paste support and custom model integration or editing behaviors
- Custom protocol extensions to invoke domain-specific behavior on the server
Finally, we demonstrate one of the conceptual advantages of the architectural approach and show how the same GLSP editor can be integrated into Eclipse Theia, VS Code and even the Eclipse desktop IDE.
As 30 minutes won’t be enough to cover all specific questions and for additional interactivity at the first virtual EclipseCon, we will provide an individual Q&A session for all interested attendees of this talk outside of the regular conference schedule. At the end of the talk, we will hand out information to the audience on how they can join the session with the GLSP team to clarify individual questions, potential use cases or even contributions.
Comment for the PC: Based on our experience with virtual events, we would like to add a second speaker as moderator. This will allow us to observe the chat, answer some questions right away and raise interesting questions directly to the speaker at the end of the talk.