Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
    • Search

  1. Home
  2. Projects
  3. Eclipse Cloud Development
  4. Eclipse Theia™
  5. Eclipse Theia
×

Informative message

This proposal has been approved and the Eclipse Theia™ project has been created.
Visit the project page for the latest information and development.

Go to Project

Eclipse Theia

Basics
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project: 
Eclipse Cloud Development
Background: 

Traditionally, software development has taken place on individual machines using desktop applications like the Eclipse IDE. With the rise of cloud and container technologies such as Kubernetes, the idea of coding in container workspaces, running in the cloud, has become more popular. Software development in the cloud

  • relieves the individual engineer from maintaining and setting up projects locally,

  • allows them to scale beyond the limits of their individual machines,

  • simplifies sharing and collaboration,

  • improves context switches (different projects, branches, etc.) through automation, and

  • centralizes control and confidentiality of source code.

But for the time being there are still many good reasons to prefer a locally running desktop editor, some of which are:

  • bad network connections,

  • deeper integration with local operating system features, and

  • the use of multiple different tools for different tasks (e.g. Git clients, editors, shells)

Today, every editor or IDE project either focusses on running in browsers (e.g. Eclipse Che’s IDE) or as a local desktop app (e.g. the classic Eclipse IDE). Technologies like Electron, however, allow to run the same code in the browser as well as in an integrated desktop app. Therefore, it is no longer a choice of either desktop or cloud IDE but both scenarios can be supported with a single tool.

Furthermore, since 2016 we have witnessed the rise of protocols such as the Language Server Protocol (LSP) and the Debug Adapter Protocol (DAP). They cleanly separate language specific logic that often needs to deal with internals of compilers and runtimes from the actual tool. Today we count over 50 language servers for different languages. Implementing support for such protocols within an IDE makes these assets immediately available.

Scope: 

Eclipse Theia produces an extensible platform for developing browser and desktop IDEs. In particular, the following is supported:

  • Use Theia as a basis for IDE-like products.

  • Provide the end-user with a full-fledged, multi-language IDE (not just a smart editor).

  • Support equally the paradigm of Cloud IDE and Desktop IDE.

  • Provide support for multiple languages via the Language and Debug Adapter Protocols.

  • Provide a modern GUI with JavaScript UI libraries.

Description: 

Eclipse Theia is an extensible platform to develop full-fledged, multi-language, cloud & desktop IDE-like products with state-of-the-art web technologies. It is implemented in TypeScript, CSS and HTML.

From a birds-eye-view, Theia consists of a frontend, running in a browser or in the local desktop application and a backend running on any host or locally within the desktop application. The frontend and backend communicate through JSON RPC over websockets.

A Theia application consists of a number of extensions, that can contribute to the frontend and the backend part. Everything in Theia is built using this extension system.

Why Here?: 

The Eclipse Foundation has always been the home for developer tools developed under an open-source governance. We think the community at Eclipse will help make Theia a diverse and successful open-source project.

Licenses: 
Eclipse Public License 2.0
一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception
Legal Issues: 

We do not expect any legal issues.

Project Scheduling: 

The initial contribution can be done as soon as the project proposal is accepted. First build will be ready shortly after.

Future Work: 
  • Add support for Debug Adapter Protocol.

  • Add more and deeper language support.

  • Enhance the git integration.

  • Test UI and testing framework

  • Authentication

  • Advanced Commands/tasks

  • Sandboxed plugins

  • Support Multi-root workspaces

  • Add Editor navigation history service

  • Add JSON Schema support

People
Project Leads: 
Sven Efftinge
Marc Dumais
Committers: 
Akos Kitta
Artem Zatsarynnyi
Alex Tugarev
Anton Kosyakov
Florent Benoit
Gorkem Ercan
Liang Huang
Jacques Bouthillier
Jan Bicker
Dr. Miro Spoenemann
Patrick Pollo Guilbert
Paul Marechal
Yevhen Vydolob
Mentors: 
Gunnar Wagenknecht
Interested Parties: 
  • Ericsson

  • RedHat

  • TypeFox

  • Gunnar Wagenknecht (Salesforce)

  • Obeo (Cedric Brun)

  • EclipseSource (Jonas Helming)

  • Kichwa Coders (Tracy Miranda, Jonah Graham)

  • IBM (John Duimovich)

  • Martin Lippert (Pivotal)

Source Code
Initial Contribution: 

The initial contribution has been developed by TypeFox in collaboration with Ericsson and can be found here : https://github.com/theia-ide/theia

Source Repository Type: 
GitHub
Source Repositories: 
https://github.com/theia-ide/theia
  • Sign in to post comments.

Project Links

  • TheiaCon 2022 Session Videos
  • Website
Eclipse Theia™

Related Projects

Project Hierarchy:

  • Eclipse Cloud Development
  • Eclipse Theia™

Tags

Technology Types
  • Tools

Eclipse Foundation

  • About Us
  • Contact Us
  • Sponsor
  • Members
  • Governance
  • Code of Conduct
  • Logo and Artwork
  • Board of Directors
  • Careers

Legal

  • Privacy Policy
  • Terms of Use
  • Copyright Agent
  • Eclipse Public License
  • Legal Resources

Useful Links

  • Report a Bug
  • Documentation
  • How to Contribute
  • Mailing Lists
  • Forums
  • Marketplace

Other

  • IDE and Tools
  • Projects
  • Working Groups
  • Research@Eclipse
  • Report a Vulnerability
  • Service Status

Copyright © Eclipse Foundation. All Rights Reserved.

Back to the top