A web-based diagram client framework for the Graphical Language Server Platform (GLSP) based on Eclipse Sprotty.
@eclipse-glsp/protocol
: Generic client-server communication protocol@eclipse-glsp/client
: sprotty-based GLSP client
This project is built with yarn
and is available from npm via @eclipse-glsp/protocol and @eclipse-glsp/client.
The workflow diagram is a consistent example provided by all GLSP components. The example implements a simple flow chart diagram editor with different types of nodes and edges (see screenshot below). The example can be used to try out different GLSP features, as well as several available integrations with IDE platforms (Theia, VSCode, Eclipse, Standalone). As the example is fully open source, you can also use it as a blueprint for a custom implementation of a GLSP diagram editor. See our project website for an overview of the workflow example and all components implementing it.
demo.mp4
Clone this repository and build the glsp-client packages:
yarn install
Next, download and start a pre-built version of the Workflow Example Node Diagram Server with:
yarn start:exampleServer
Once the server is running, open the glsp-client/examples/workflow-standalone/app/diagram.html
file in your favorite browser.
If you want to explore or change the Workflow Diagram Server too, you can clone, build and start the Java or Node variant of the workflow example glsp-server
from your IDE instead of using the pre-built version of the Workflow Diagram Server.
Checkout the glsp-server
or glsp-server-node
repo for instructions on building and running the Workflow Diagram Server example.
In addition to this repository, the source code of the Workflow Diagram server example can be found here: https://github.com/eclipse-glsp/glsp-server/tree/master/examples/org.eclipse.glsp.example.workflow
For more information, please visit the Eclipse GLSP Umbrella repository and the Eclipse GLSP Website. If you have questions, please raise them in the discussions and have a look at our communication and support options.