Eclipse Theia

Last updated
Eclipse Theia
Developer(s) EclipseSource, Ericsson, Red Hat, STMicroelectronics, TypeFox
Initial releaseMarch 2017;6 years ago (March 2017)
Stable release
1.43 [1]   OOjs UI icon edit-ltr-progressive.svg / 2 November 2023;2 months ago (2 November 2023)
Repository github.com/eclipse-theia
Written in TypeScript
Type Programming tool, Integrated development environment
License Eclipse Public License 2.0 (EPL2) or GNU General Public License, version 2 (GPLv2) with the classpath exception [2]
Website https://theia-ide.org/

Eclipse Theia is an Eclipse open source project providing the Theia Platform and the Theia IDE.

Contents

The Eclipse Theia Platform is a free and open-source framework for building IDEs and tools based on modern web technologies. [3] Theia-based applications can be deployed as desktop and web applications. [4] It is implemented in TypeScript, reuses parts of Visual Studio Code, and emphasizes extensibility. [5] [6] [7]

The Eclipse Theia IDE [8] is a modern and open IDE for cloud and desktop. The Theia IDE is based on the Theia platform.

History

Theia was originally developed by TypeFox and Ericsson, and continually receives contributions from EclipseSource, Red Hat, IBM, Google, Arm Holdings as well as from individual contributors. [9] [10] It was first launched in March 2017. [11] Since May 2018, Theia has been a project of the Eclipse Foundation. [12] Eclipse Theia is now considered to be the next generation Eclipse Platform for tools and IDEs [13] .

About

Theia is built on the Language Server Protocol (LSP) and supports a variety of programming languages. [14] It can be used as a desktop application, a web application, or a hybrid application with separate front and back ends. All of Theia's features are implemented as extensions, which allows third-party developers to modify Theia's functionality by using the same application programming interfaces (APIs) as the application's default components. [15] Theia's layout consists of draggable docks. [15] [16] Theia is compatible with Visual Studio Code extensions. [17]

Theia is a free and open-source software project under the Eclipse Foundation and is licensed under the Eclipse Public License 2.0 (EPL2). [18]

Usage

Eclipse Che uses Eclipse Theia as its default IDE starting from version 7. [19]

In September 2018, the online IDE Gitpod was released which was based on Theia. [20] (In 2021, Gitpod switched to Visual Studio Code. [21] )

Arduino IDE 2.0 is based on Eclipse Theia, replacing the Processing-based IDE. [22]

Reception

In January 2019, JAXenter, a website and blog about coding, [23] ranked Theia as the third-most popular JavaScript integrated development environment of 2018 according to GitHub metrics, behind Visual Studio Code and Atom. [24]

Related Research Articles

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop, NetBeans do not.

<span class="mw-page-title-main">Eclipse (software)</span> Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

<span class="mw-page-title-main">Arduino</span> Open-source hardware and software platform

Arduino is an Italian open-source hardware and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardware products are licensed under a CC BY-SA license, while the software is licensed under the GNU Lesser General Public License (LGPL) or the GNU General Public License (GPL), permitting the manufacture of Arduino boards and software distribution by anyone. Arduino boards are available commercially from the official website or through authorized distributors.

The following tables list notable software packages that are nominal IDEs; standalone tools such as source-code editors and GUI builders are not included. These IDEs are listed in alphabetic order of the supported language.

TypeScript is a free and open-source high-level programming language developed by Microsoft that adds static typing with optional type annotations to JavaScript. It is designed for the development of large applications and transpiles to JavaScript. Because TypeScript is a superset of JavaScript, all JavaScript programs are syntactically valid TypeScript, but they can fail to type-check for safety reasons.

Mbed is a development platform and real-time operating system (RTOS) designed for internet-connected devices that utilize 32-bit ARM Cortex-M microcontrollers. These internet-enabled devices are often categorized under the Internet of Things (IoT) umbrella. The Mbed project is a collaborative effort led by Arm Holdings, in partnership with various technology companies and contributors.

<span class="mw-page-title-main">Chromium Embedded Framework</span> Free and open-source software framework

The Chromium Embedded Framework (CEF) is an open-source software framework for embedding a Chromium web browser within another application. This enables developers to add web browsing functionality to their application, as well as the ability to use HTML, CSS, and JavaScript to create the application's user interface.

Codename One is an open-source cross-platform framework aiming to provide write once, run anywhere code for various mobile and desktop operating systems. It was created by the co-founders of the Lightweight User Interface Toolkit (LWUIT) project, Chen Fishbein and Shai Almog, and was first announced on January 13, 2012. It was described at the time by the authors as "a cross-device platform that allows you to write your code once in Java and have it work on all devices specifically: iPhone/iPad, Android, Blackberry, Windows Phone 7 and 8, J2ME devices, Windows Desktop, Mac OS, and Web. The biggest goals for the project are ease of use/RAD, deep integration with the native platform and speed."

<span class="mw-page-title-main">Atom (text editor)</span> Free and open-source text and source code editor

Atom was a free and open-source text and source code editor for macOS, Linux, and Windows with support for plug-ins written in JavaScript, and embedded Git Control. Developed by GitHub, Atom was released on June 25, 2015.

<span class="mw-page-title-main">Electron (software framework)</span> Development framework built on Chromium

Electron is a free and open-source software framework developed and maintained by OpenJS Foundation. The framework is designed to create desktop applications using web technologies that are rendered using a version of the Chromium browser engine and a back end using the Node.js runtime environment. It also uses various APIs to enable functionality such as native integration with Node.js services and an inter-process communication module.

<span class="mw-page-title-main">B4X</span>

B4X is a suite of rapid application development IDEs and proprietary programming language that allows the creation of applications on the following platforms: Google Android, Apple iOS, Java, Raspberry Pi and Arduino. Although the B4X syntax is very similar to BASIC, it is an entirely new language.

<span class="mw-page-title-main">Eclipse Che</span> Developer workspace server software

Eclipse Che is an open-source, Java-based developer workspace server and Online IDE. It includes a multi-user remote development platform. The workspace server comes with a flexible RESTful webservice. It also contains a SDK for creating plug-ins for languages, frameworks or tools. Eclipse Che is an Eclipse Cloud Development (ECD) top-level project, allowing contributions from the user community.

<span class="mw-page-title-main">DBeaver</span> Multi-platform database administration software

DBeaver is a SQL client software application and a database administration tool. For relational databases it uses the JDBC application programming interface (API) to interact with databases via a JDBC driver. For other databases (NoSQL) it uses proprietary database drivers. It provides an editor that supports code completion and syntax highlighting. It provides a plug-in architecture that allows users to modify much of the application's behavior to provide database-specific functionality or features that are database-independent. This is a desktop application written in Java and based on Eclipse platform.

The Language Server Protocol (LSP) is an open, JSON-RPC-based protocol for use between source code editors or integrated development environments (IDEs) and servers that provide "language intelligence tools": programming language-specific features like code completion, syntax highlighting and marking of warnings and errors, as well as refactoring routines. The goal of the protocol is to allow programming language support to be implemented and distributed independently of any given editor or IDE. In the early 2020s LSP quickly became a "norm" for language intelligence tools providers.

An online integrated development environment, also known as a web IDE or cloud IDE, is a browser based integrated development environment. An online IDE can be accessed from a web browser, such as Firefox, Google Chrome or Microsoft Edge, enabling software development on low-powered devices that are normally unsuitable. An online IDE does not usually contain all of the same features as a traditional desktop IDE, only basic IDE features such as a source-code editor with syntax highlighting. Integrated version control and Read–Eval–Print Loop (REPL) may also be included.

References

  1. "Eclipse Theia 1.43 Release: News and Noteworthy".
  2. "Theia license". GitHub .
  3. Helming, Jonas; Koegel, Maximilian (2018-06-20). "What is Eclipse Theia?". EclipseSource. Retrieved 2022-03-12.
  4. "Theia · GitBook". www.theia-ide.org. Retrieved 2019-01-16.
  5. Le Meur, Stevan (2018-12-19). "Eclipse Che 7 is Coming and It's Really Hot (2/4)". RHD Blog. Retrieved 2019-01-16.
  6. Ferrara, Claudio Davide (2017-12-04). "Theia: un solo IDE per Desktop e Cloud". HTML.it (in Italian). Retrieved 2019-02-14.
  7. Heller, Martin (2019-02-25). "Cloud IDE review: AWS Cloud9 vs. Eclipse Che vs. Eclipse Theia". InfoWorld. Retrieved 2019-02-25.
  8. "Theia IDE website". www.theia-ide.org. Retrieved 2024-01-10.
  9. "Theia Project Contributor Overview". projects.eclipse.org. 2021-12-30. Retrieved 2021-12-30.
  10. "Theia - Cloud and Desktop IDE". www.theia-ide.org. Retrieved 2019-01-16.
  11. Mohilo, Dominik (2017-05-30). "What Theia is all about — A classic IDE built with modern technology". JAXenter. Retrieved 2019-01-16.
  12. "Eclipse Theia". projects.eclipse.org. Retrieved 2019-01-16.
  13. "Eclipse Theia is the Next Generation Eclipse Platform for IDEs and Tools!". eclipsesource.com/. Retrieved 2024-01-10.
  14. "Langserver.org". langserver.org. Retrieved 2019-01-16.
  15. 1 2 Mohilo, Dominik (2017-05-18). "Theia: Eine einzige IDE auf dem Desktop und in der Cloud". JAXenter (in German). Retrieved 2019-01-16.
  16. Le Meur, Stevan (2018-12-17). "Eclipse Che 7 is Coming and It's Really Hot (1/4)". Eclipse Che Blog. Retrieved 2019-01-17.
  17. "Extensions and Plugins". Theia - Cloud and Desktop IDE Platform.
  18. Beaton, Wayne. "Eclipse Public License 2.0 | The Eclipse Foundation". www.eclipse.org. Retrieved 2019-01-16.
  19. Helming, Jonas (2019). "Eclipse Che vs. Eclipse Theia".
  20. Claburn, Thomas (2018). "Gitpod git-bolts git-IDE onto GitHub for in-browser code git-editing".
  21. Kosyakov, Anton. "From Theia to OpenVSCode Server - A history of Cloud IDEs". Gitpod. Retrieved 3 June 2022.
  22. Jean-Luc Aufranc (2021-03-03). "Arduino IDE 2.0 beta released with live debugger, revamped user interface". cnx-software.com. Retrieved 2021-03-04.
  23. "JAXenter - News, Articles, Code". JAXenter. Retrieved 2020-10-22.
  24. Papadopoulou, Eirini-Eleni (2019-01-17). "Vue.js is the absolute rockstar of the JavaScript ecosystem". JAXenter. Retrieved 2019-02-11.