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.