Skip to main content

Eclipse Platform

Eclipse Platform is an open-source, modular platform for building Integrated Development Environments (IDEs) and other rich client applications based on a plug-in architecture (developer tools / application platform).

  • Plug-in based architecture for extensible IDEs and tools (developer tools)
  • Rich Client Platform (RCP) for building desktop applications (application platform)
  • Workbench model with perspectives, views, and editors (UI framework)
  • Core runtime, resources, and workspace management (application runtime)
  • Extension points and plug-in model for ecosystem integrations (extensibility framework)

More About Eclipse Platform

The Eclipse Platform is an open-source foundation for tools and client applications that provides a modular, plug-in based architecture for constructing IDEs and other extensible tooling (developer tools / application platform). It was initially created to support the Eclipse Immutable Deployment Environment (IDE) but is designed as a general-purpose platform that can host a wide range of domain-specific tools and user interfaces.

At its core, the Eclipse Platform supplies a runtime and plug-in model (application runtime) based on a component architecture in which all functionality is delivered as plug-ins. Plug-ins contribute to the platform through well-defined extension points, and they can define their own extension points for other plug-ins. This model supports composition of capabilities such as editors, views, builders, and project natures into a single, integrated workbench (extensibility framework).

The workbench layer of the Eclipse Platform (UI framework) defines how users interact with the environment through perspectives, views, and editors. Perspectives organize views and editors for specific tasks, while views present various kinds of information such as project trees or problem lists. Editors handle content such as source files or models. This framework allows tool builders to provide domain-specific perspectives and integrate them with shared navigation, menus, and preferences.

The platform also includes a resources and workspace model (project workspace management) that manages projects, folders, and files in a consistent way. It tracks changes, supports builders and incremental compilation, and exposes resources through APIs so tooling can coordinate operations on the same underlying projects. This workspace model is widely used by language tooling, model-driven tools, and other development or engineering plug-ins.

For building standalone desktop applications, the Eclipse Platform provides the Rich Client Platform (RCP) (desktop application framework). RCP packages the core runtime, workbench UI, update mechanisms, and other base services so that organizations can assemble custom applications that do not expose the full Eclipse IDE. These applications can reuse views, editors, help systems, and other components, and they run on multiple operating systems using underlying UI toolkits integrated by the platform.

In enterprise and institutional environments, the Eclipse Platform is used as the base for language IDEs, engineering workbenches, modeling tools, and domain-specific tooling suites (developer tools). Vendors and internal development teams create plug-ins that integrate with the platform’s extension points, enabling consistent user experience, shared update and provisioning mechanisms, and reuse of common services such as text editors, search, version control integration, and task management.

Within a technical taxonomy, Eclipse Platform is categorized as a modular application framework and tooling platform (application platform / developer tools). It is positioned as the underlying infrastructure on which the Eclipse IDE and many other specialized tools are built, with an ecosystem of plug-ins and RCP applications that rely on its runtime, workbench, and extensibility mechanisms.