Skip to main content

Eclipse GLSP

Eclipse GLSP (Graphical Language Server Platform) is a framework for building web- and cloud-based diagram editors using a client-server architecture aligned with the language server model (application development tooling).

  • Framework for creating custom graphical diagram editors for domain-specific languages (modeling tools).
  • Client-server diagram architecture with a protocol between a GLSP client and GLSP server (tooling protocol/framework).
  • Server-side language implementation with model handling, validation, layout, and editing operations (application back-end).
  • Web-based diagram clients that integrate with platforms such as VS Code and Eclipse Theia (IDE/editor integration).
  • Extension points and APIs for custom notation, tools, and integration with existing modeling or engineering stacks (extensibility framework).

More About Eclipse GLSP

Eclipse GLSP (Graphical Language Server Platform) addresses the problem of implementing graphical modeling tools and diagram editors for domain-specific languages in web and cloud environments (modeling and development tooling). It follows a client-server architecture inspired by the Language Server Protocol, but targeted at diagrams rather than textual languages. This approach separates the rendering and interaction layer in the client from the language- and domain-specific logic in the server.

On the server side (application back-end), Eclipse GLSP provides a platform to implement the “diagram language” for a given domain. The server is responsible for maintaining the underlying domain model, computing diagram elements, handling editing commands, performing validations, and coordinating layout operations. It exposes these capabilities over a protocol to connected GLSP clients. The server can integrate with existing modeling frameworks, code generators, or engineering back-ends where the domain model already resides.

On the client side (web application / Immutable Deployment Environment (IDE) integration), Eclipse GLSP offers components and libraries to embed diagram editors into web-based tools and Integrated Development Environments (IDEs). Official materials describe integration with platforms such as Eclipse Theia and Visual Studio Code, enabling diagram editors to run directly inside browser-based development environments. The client renders the diagram, manages user interactions such as selection, drag-and-drop, and routing of commands, and communicates with the GLSP server using the defined protocol.

The project defines a protocol and message model between the GLSP client and server (tooling protocol/framework). This protocol covers operations such as initializing a diagram session, requesting diagram data, applying edits, updating the model, and synchronizing changes. By following this protocol, different client implementations can connect to compatible servers, and servers can support multiple clients with a shared diagram language implementation.

Eclipse GLSP includes extension points and APIs (extensibility framework) that allow tool builders to customize visual notation, palette tools, context menus, behaviors, and integration with surrounding platforms. Enterprises and institutions can use these capabilities to implement domain-specific diagram editors for architecture modeling, systems engineering, workflows, or other graphical notations, while hosting the tools in web portals, cloud IDEs, or integrated engineering environments.

Within an enterprise tooling taxonomy, Eclipse GLSP fits into the category of modeling and diagramming frameworks for custom tooling, with further relevance to IDE extension frameworks and web-based Developer Experience (DevEx) platforms. It provides an architectural approach for centralizing model logic in servers while reusing web client components across different tools and deployment environments.