# eclipse-theia/theia

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/eclipse-theia-theia).**

21,372 stars · 2,798 forks · TypeScript · epl-2.0

## Links

- GitHub: https://github.com/eclipse-theia/theia
- Homepage: http://theia-ide.org
- awesome-repositories: https://awesome-repositories.com/repository/eclipse-theia-theia.md

## Topics

`cloud-ide` `editor` `electron` `ide` `language-server-protocol` `typescript`

## Description

Theia is a modular framework designed for building professional-grade development environments that function as both local desktop applications and remote browser-based services. It provides a comprehensive toolkit for constructing specialized coding tools, allowing developers to assemble custom interfaces and backend logic through a flexible, contribution-based architecture.

The platform distinguishes itself through a highly extensible workbench that supports the integration of existing third-party editor plugins and standard language servers. By utilizing a dependency injection container and a multi-process architecture, it enables the creation of tailored development experiences that maintain compatibility with established industry standards while offering deep customization of UI components, menus, and command structures.

Beyond its core construction capabilities, the framework includes integrated support for artificial intelligence, offering features such as natural language chat, automated code issue resolution, and context-aware coding assistance. It manages complex development workflows through task planning, automated script execution, and collaborative review processes, all while enforcing security policies through workspace execution restrictions and tool access controls.

The project is distributed as a ready-to-use desktop application and provides build pipelines for packaging custom environments into native installers for major operating systems.

## Tags

### Development Tools & Productivity

- [AI Coding Assistants](https://awesome-repositories.com/f/development-tools-productivity/ai-coding-assistants.md) — Integrates artificial intelligence to provide real-time coding assistance, refactoring, and conversational development support within the IDE. ([source](http://www.theia-ide.org/docs/))
- [Desktop Applications](https://awesome-repositories.com/f/development-tools-productivity/desktop-applications.md) — Delivers development environments that run seamlessly as either local desktop applications or remote browser-based services.
- [Web-Based IDEs](https://awesome-repositories.com/f/development-tools-productivity/web-based-ides.md) — Provides a framework for constructing specialized, web-based development environments by composing modular components and services. ([source](http://www.theia-ide.org/docs))
- [Cloud IDEs](https://awesome-repositories.com/f/development-tools-productivity/cloud-ides.md) — Offers a flexible architecture for constructing specialized coding tools that support remote workspaces and browser-based development.
- [Autonomous Coding Agents](https://awesome-repositories.com/f/development-tools-productivity/autonomous-coding-agents.md) — Operates as an autonomous agent that plans, writes, tests, and iterates on code tasks without manual intervention. ([source](http://www.theia-ide.org/docs/theia_coder/))
- [Language Server Protocol Clients](https://awesome-repositories.com/f/development-tools-productivity/code-editors-ides/extension-ecosystems-management/editor-ide-extensions/language-server-protocol-clients.md) — Connects code editors to language servers for syntax highlighting, completion, and diagnostics. ([source](http://www.theia-ide.org/docs/language_support/))
- [Extensible Development Environments](https://awesome-repositories.com/f/development-tools-productivity/extensible-development-environments.md) — Provides a highly customizable workbench that integrates third-party plugins and language servers to provide tailored coding experiences.
- [Extensible Application Frameworks](https://awesome-repositories.com/f/development-tools-productivity/extensible-application-frameworks.md) — Provides a modular framework foundation that allows developers to contribute custom features and services via dependency injection. ([source](http://www.theia-ide.org/docs/architecture/))
- [Modular Development Tools](https://awesome-repositories.com/f/development-tools-productivity/modular-development-tools.md) — Supplies a collection of reusable components and services for assembling professional-grade development tools with custom UI and backend logic.
- [VS Code Extensions](https://awesome-repositories.com/f/development-tools-productivity/vs-code-extensions.md) — Runs existing third-party editor plugins to expand application capabilities. ([source](http://www.theia-ide.org/docs/project_goals/))
- [Development Integrations](https://awesome-repositories.com/f/development-tools-productivity/code-editors-ides/extension-ecosystems-management/editor-ide-extensions/development-integrations.md) — Provides reusable components for file exploration, version control, and code editing to accelerate tool creation. ([source](http://www.theia-ide.org/docs/project_goals/))
- [Code Review Interfaces](https://awesome-repositories.com/f/development-tools-productivity/code-review-interfaces.md) — Approves structured code modifications proposed by an AI agent through interactive, diff-based review workflows. ([source](http://www.theia-ide.org/docs/theia_coder/))
- [Change Proposal Workflows](https://awesome-repositories.com/f/development-tools-productivity/code-quality-analysis/static-analysis-engines/static-analysis-tools/code-analysis-tools/local-change-reviewers/change-proposal-workflows.md) — Suggests code modifications through a structured mechanism that allows users to review, refine, or accept changes. ([source](http://www.theia-ide.org/docs/theia_ai/))
- [Command Palettes](https://awesome-repositories.com/f/development-tools-productivity/command-palettes.md) — Registers executable actions that users trigger via the command palette, menus, or keyboard shortcuts. ([source](http://www.theia-ide.org/docs/authoring_extensions/))
- [Editor Extensions](https://awesome-repositories.com/f/development-tools-productivity/editor-extensions.md) — Maps specific file extensions to custom interface components that replace the default editor for those files. ([source](http://www.theia-ide.org/docs/custom_editors/))
- [Editor Layout Managers](https://awesome-repositories.com/f/development-tools-productivity/editor-layout-managers.md) — Provides a window management system for arranging views and editors with support for drag and drop. ([source](http://www.theia-ide.org/docs/project_goals/))
- [Keyboard Shortcut Managers](https://awesome-repositories.com/f/development-tools-productivity/keyboard-shortcut-managers.md) — Assigns specific key combinations to commands and restricts their activation to particular application states or focused components. ([source](http://www.theia-ide.org/docs/commands_keybindings/))
- [Slash Command Interfaces](https://awesome-repositories.com/f/development-tools-productivity/slash-command-interfaces.md) — Executes pre-defined prompt templates and workflows using simple slash-prefixed commands within the chat interface. ([source](http://www.theia-ide.org/docs/user_ai/))
- [Task Automation Tools](https://awesome-repositories.com/f/development-tools-productivity/task-automation-tools.md) — Executes user-defined scripts or build processes via the command palette to streamline repetitive development operations. ([source](http://www.theia-ide.org/docs/tasks/))

### Artificial Intelligence & ML

- [AI Chat Assistants](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-chat-assistants.md) — Interacts with an integrated agent to request code generation, file modifications, and workspace analysis using natural language. ([source](http://www.theia-ide.org/docs/theia_coder/))
- [Agent Context Providers](https://awesome-repositories.com/f/artificial-intelligence-ml/agent-context-providers.md) — Provides relevant code files and selected text to an AI agent to improve the accuracy of generated responses. ([source](http://www.theia-ide.org/docs/theia_coder/))
- [Predictive Code Completions](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-coding-assistants/predictive-code-completions.md) — Provides real-time, context-aware code suggestions directly within the editor as you type to accelerate development workflows. ([source](http://www.theia-ide.org/docs/user_ai/))
- [AI Assistant Configurations](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-systems-frameworks/integration-deployment/agent-configuration-tools/ai-assistant-configurations.md) — Enables or disables specific AI assistants and configures their settings and model assignments through a centralized interface. ([source](http://www.theia-ide.org/docs/user_ai/))
- [AI Agent Frameworks](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-agent-frameworks.md) — Provides modular components that mediate between user input and language models to trigger actions. ([source](http://www.theia-ide.org/docs/theia_ai/))
- [LLM Provider Adapters](https://awesome-repositories.com/f/artificial-intelligence-ml/llm-provider-adapters.md) — Provides a unified interface layer for connecting to various artificial intelligence model providers. ([source](http://www.theia-ide.org/docs/theia_ai/))
- [Model Provider Configurations](https://awesome-repositories.com/f/artificial-intelligence-ml/model-provider-configurations.md) — Provides interfaces for connecting and authenticating with various external and local language model providers. ([source](http://www.theia-ide.org/docs/user_ai/))
- [Task Planning Systems](https://awesome-repositories.com/f/artificial-intelligence-ml/task-planning-systems.md) — Externalizes development intent into editable files that agents use to track and execute complex multi-step workflows. ([source](http://www.theia-ide.org/docs/user_ai/))
- [Agent Tool Execution](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-systems-frameworks/integration-deployment/agent-frameworks/tool-use-and-execution/agent-tool-execution.md) — Allows automated agents to invoke external functions and tools during processing tasks. ([source](http://www.theia-ide.org/docs/theia_ai/))
- [AI Chat Actions](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-chat-actions.md) — Provides integrated tools for performing coding, planning, and analysis tasks directly within a chat conversation. ([source](http://www.theia-ide.org/docs/user_ai/))
- [Context Injection](https://awesome-repositories.com/f/artificial-intelligence-ml/context-injection.md) — Attaches dynamic data to chat requests to help language models generate more informed and relevant responses. ([source](http://www.theia-ide.org/docs/theia_ai/))
- [Prompt Templates](https://awesome-repositories.com/f/artificial-intelligence-ml/prompt-templates.md) — Defines slash commands that trigger specific prompt templates or agent behaviors using shorthand syntax in chat. ([source](http://www.theia-ide.org/docs/theia_ai/))

### Software Engineering & Architecture

- [Dependency Injection Containers](https://awesome-repositories.com/f/software-engineering-architecture/dependency-injection-containers.md) — Wires application components together using a container to enable loose coupling and modular composition.
- [Interface-Based Module Registries](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/registration-discovery-systems/interface-based-module-registries.md) — Allows external modules to register custom logic and UI elements through a unified service registry.
- [Modular Extension Architectures](https://awesome-repositories.com/f/software-engineering-architecture/modular-extension-architectures.md) — Extends application functionality through a dependency injection framework that allows for custom UI components, services, and workflows. ([source](http://www.theia-ide.org/docs/services_and_contributions/))
- [Multi-Process Architectures](https://awesome-repositories.com/f/software-engineering-architecture/multi-process-architectures.md) — Separates user interface from backend services to support both browser and desktop environments.
- [Dependency Injection Containers](https://awesome-repositories.com/f/software-engineering-architecture/object-management-systems/dependency-injection-containers.md) — Wires components together using a dependency injection container to enable loose coupling and modularity. ([source](http://www.theia-ide.org/docs/services_and_contributions/))
- [External Application Integrations](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/workflow-automation-integrations/external-application-integrations.md) — Supports loading third-party plugins and extensions to extend editor functionality and language support. ([source](http://www.theia-ide.org/docs/authoring_vscode_extensions/))
- [Application Configuration](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/configuration-scopes/application-configuration.md) — Manages hierarchical application settings across user, workspace, and folder scopes for flexible customization. ([source](http://www.theia-ide.org/docs/preferences/))
- [Contribution Points](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/developer-authoring-interfaces/custom-module-implementations/contribution-points.md) — Defines contribution points that allow external modules to register custom logic into the workbench. ([source](http://www.theia-ide.org/docs/services_and_contributions/))
- [Inter-Process Communication](https://awesome-repositories.com/f/software-engineering-architecture/inter-process-communication.md) — Enables structured data exchange between separate application processes using standard protocols. ([source](http://www.theia-ide.org/docs/architecture/))
- [Project Context Managers](https://awesome-repositories.com/f/software-engineering-architecture/project-context-managers.md) — Maintains a persistent knowledge base of project architecture to improve the accuracy of AI-generated responses. ([source](http://www.theia-ide.org/docs/user_ai/))

### DevOps & Infrastructure

- [Deployment Environments](https://awesome-repositories.com/f/devops-infrastructure/deployment-management-strategies/execution-platforms-and-targets/deployment-environments.md) — Runs applications in both local desktop and remote browser contexts using a unified codebase and architecture. ([source](http://www.theia-ide.org/docs/architecture/))

### Operating Systems & Systems Programming

- [Desktop Application Installers](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-application-development/desktop-application-installers.md) — Bundles the development environment into native installers for Windows, macOS, and Linux using standard tools. ([source](http://www.theia-ide.org/docs/blueprint_documentation/))

### Testing & Quality Assurance

- [Automated Code Fixers](https://awesome-repositories.com/f/testing-quality-assurance/code-quality-review/automated-code-fixers.md) — Applies automated fixes to diagnostics and linting errors by modifying files directly. ([source](http://www.theia-ide.org/docs/theia_coder/))

### User Interface & Experience

- [Virtual DOM Engines](https://awesome-repositories.com/f/user-interface-experience/virtual-dom-engines.md) — Manages the application interface by efficiently updating component trees based on state changes.

### Business & Productivity Software

- [User Preference Management](https://awesome-repositories.com/f/business-productivity-software/user-preference-management.md) — Merges configuration settings across multiple scopes to provide flexible user customization.

### Networking & Communication

- [JSON-RPC Message Buses](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/messaging-notification-systems/messaging-services/message-broker-infrastructure/json-rpc-message-buses.md) — Facilitates communication between frontend and backend processes using JSON-RPC over persistent connections.
