Eclipse Che - Short Review

Collaboration Tools



Introduction to Eclipse Che

Eclipse Che is an open-source, Kubernetes-native Integrated Development Environment (IDE) and developer collaboration platform, managed by the Eclipse Foundation. It is designed to address the complexities of modern software development by providing a centralized, consistent, and highly customizable development environment.



Core Goals and Objectives

  • Accelerate project and developer onboarding by offering a zero-install development environment accessible via a browser, making it easy for new team members to contribute to projects immediately.
  • Remove inconsistencies between developer environments by ensuring that the code works identically in every developer’s environment, eliminating the “but it works on my machine” issue.
  • Provide built-in security and enterprise readiness with features such as role-based access control and the ability to secure and manage source code effectively.


Key Features and Functionality



Centralized Developer Environment

Eclipse Che runs on Kubernetes or OpenShift, allowing for the creation of multi-container workspaces for each developer. These workspaces can be replicated with a single click using Che factories, ensuring consistency across the development team.



Customizable Workspaces

Che offers pre-built stacks for various languages and runtimes, and users can create custom stacks to meet specific project requirements. This flexibility extends to hosting custom tools and editors, such as modeling tools, diagram editors, or tools for domain-specific languages.



Enterprise Integration

Eclipse Che supports enterprise integration through OpenShift OAuth or Dex, providing robust security features like role-based access control. It also integrates with monitoring tools such as Prometheus and Grafana for state-of-the-art monitoring and tracing capabilities.



Browser-Based IDE

Che includes a default online IDE called Theia, which is fully customizable and extensible. Theia supports integration with other IDEs like Microsoft Visual Studio Code and JetBrains IntelliJ IDEA Community Edition. It also supports tools protocols such as the Language Server Protocol and Debug Adapter Protocol, and is compatible with Visual Studio Code extensions.



Collaboration and Multi-User Support

Eclipse Che is designed for multi-user and multi-tenancy environments, allowing hundreds of developers to collaborate on projects. It supports collaborative workspaces where multiple users can develop the same application without the need for local software installations.



Workspace Management

Che workspaces are Kubernetes or OpenShift Pods, which can be managed through the DevWorkspace operator. This operator creates and controls the necessary Kubernetes objects (Pods, Services, PersistentVolumes) for user workspaces. Workspace configurations are persisted and can be easily migrated or replicated, ensuring workspace portability and version control.



Extensibility and Customization

Eclipse Che provides a software development kit (SDK) for creating custom cloud developer platforms and plug-ins for languages, frameworks, or tools. This extensibility allows developers to adapt the Che IDE to their specific needs and integrate it with their workflow.



Additional Features

  • Workspace Snapshots: The ability to persist the state of a workspace and restart it later.
  • Git Visualization: Files can be colored based on their Git status.
  • RESTful Workspaces: Communication between the browser IDE and the workspace manager is done via RESTful APIs.
  • Debugger: Advanced debugging capabilities with thread navigation, conditions, and suspend policies on breakpoints.
  • DevOps Integration: Developers can monitor the status of machines using the IDE.

In summary, Eclipse Che is a powerful, flexible, and highly customizable IDE and collaboration platform that addresses the needs of modern software development by providing consistent, secure, and portable development environments.

Scroll to Top