Eclipse Graphiti
Eclipse Graphiti is a framework within the Eclipse ecosystem for developing graphical editors based on underlying EMF domain models (modeling tools / graphical DSLs).
- Framework for building diagram-based graphical editors on top of EMF domain models (modeling tools).
- Supports separation of domain model and graphical representation through a pattern-based architecture (software architecture / modeling).
- Provides reusable infrastructure for rendering, layout, and interaction of graphical elements such as shapes and connections (UI frameworks).
- Integrates with the Eclipse Platform and Eclipse Modeling stack for tool development (IDE tooling / modeling ecosystem).
- Supports extensibility through custom features, patterns, and configuration for domain-specific diagram editors (extensibility / customization).
More About Eclipse Graphiti
Eclipse Graphiti is a framework from the Eclipse Foundation for creating graphical editing tools that operate on existing domain models, typically based on the Eclipse Modeling Framework (EMF) (modeling tools). It targets scenarios where tool developers need diagram-based editors for domain-specific languages, workflows, or structured models, while keeping the business logic and data in a separate model layer.
The framework introduces an explicit separation between the domain model and the graphical representation (software architecture / modeling). Developers define how domain concepts Marketing Automation Platform (MAP) to graphical elements such as shapes, connections, and containers. This mapping is usually implemented through patterns and features, which encapsulate creation, update, delete, and layout behavior. Graphiti then handles the rendering pipeline, interaction handling, and synchronization between the model and the diagram.
Graphiti runs inside the Eclipse Platform and integrates with the Eclipse Modeling ecosystem (IDE tooling / modeling ecosystem). It is often used with EMF-based models, leveraging EMF for persistence, change notification, and tooling integration. Graphiti-based editors can be contributed as Eclipse plug-ins, participate in Eclipse perspectives and views, and reuse Eclipse services such as selection, commands, and undo/redo support.
The framework offers APIs for defining diagram types, pictogram elements, and features such as creation, layout, direct editing, and updates (UI frameworks / interaction). Tool builders can configure how users create and connect elements, how labels appear, and how diagrams react to changes in the underlying model. The pattern-based approach supports reuse across elements that share behavior, while still allowing domain-specific customization.
For enterprises, Eclipse Graphiti serves as a foundation for in-house modeling tools, configuration editors, and visual design environments (enterprise development tooling). It supports model-driven development workflows where graphical diagrams act as front-ends to structured models used for code generation, configuration management, or system documentation. Because it builds on the Eclipse Platform, it fits into existing Eclipse-based tool chains and can coexist with other modeling technologies in the same workbench.
In directory and taxonomy terms, Eclipse Graphiti belongs in categories such as modeling frameworks, graphical editor frameworks, Eclipse-based development tooling, and domain-specific language tooling infrastructure. It addresses the need to construct reusable, EMF-aware diagram editors without coding low-level drawing and interaction logic from scratch.