Environments

Environments is our work on industry-specific bench software: purpose-built, open source workbenches for the people who design, test, program and run physical things. We build them on Eclipse Theia, an open source platform for making exactly this kind of tool.

Early stage. We are pioneering modules and complete environments and testing them in the Greater Niagara region. This is work in progress, not a finished product.

What Theia is

An IDE (integrated development environment) is the workbench where software gets written, run and debugged, all in one place. Most people know the finished ones. Eclipse Theia is different: it is the platform you build one from. It is open source, run by the Eclipse Foundation, and lets a team make a tailored tool that runs in a browser or as a desktop app from a single source. It began in 2016, started by Ericsson and TypeFox, and is still shipping regular releases, with an AI-native Theia IDE alongside the platform.

The point is that you do not have to start from nothing, and you do not have to take someone else’s tool as it comes. You assemble the environment your trade needs.

The terms, in plain English

TermWhat it means
PlatformThe set of parts an IDE is built from. Theia is a platform, so you build your own IDE from it.
ExtensionAn add-on that gives an environment a new ability. Theia hosts VS Code extensions and has its own, deeper Theia extensions.
Language server (LSP)A standard way to add language smarts, such as completion and error checking, to any editor.
Debug adapter (DAP)A standard way to connect a debugger to an editor.
Open VSXAn open registry of extensions that Theia can draw on.
White-labelA product built on Theia that carries its own name and design, not Theia’s.
GLSPAn Eclipse technology for diagram-style editors, such as ladder logic.

Theia and VS Code

Theia reuses good parts of VS Code, including its editor, extension model and language and debug standards, but it is not a fork of it. Per the Eclipse community (who back Theia, so read it with that in mind):

VS CodeTheia
Built asAn extensible code editor.A platform for building custom tools and IDEs.
RunsAs a developer IDE.On desktop and in the cloud from one technology stack.
ExtendsThrough the VS Code extension API.Through VS Code extensions and Theia extensions, with deep access to internals.
OpennessThe downloadable product is under a Microsoft licence and includes some proprietary parts.Open source components, vendor-neutral governance under the Eclipse Foundation.

Who already builds on it

Theia is not a hobby project. The Eclipse Foundation lists adopters across embedded, industrial and cloud tooling:

ProductDomainWhat it is
logi.CLOUDIndustrial automationA browser-based engineering platform with graphical editors for the IEC 61131-3 PLC languages (Structured Text, Function Block Diagram, Ladder).
Arduino IDE 2.0Embedded and IoTThe development environment for Arduino boards.
TI Code Composer StudioEmbedded and IoTTexas Instruments’ environment for its microcontrollers, moved from Eclipse RCP to Theia.
Arm Mbed StudioEmbedded and IoTA desktop IDE for building applications and libraries with Mbed OS.
Renesas QuickConnect StudioEmbedded and IoTA cloud platform for visual development of hardware.
MVTec HDevelop EVOMachine visionA modernised IDE for machine vision development.
KillerCodaEducationInteractive labs for learning Linux and Kubernetes.

The pattern is the same each time: a domain with its own way of working gets a tool shaped to it. The logi.CLOUD story is worth reading in full: it combines Theia with Eclipse GLSP to give automation engineers graphical editors and live debugging in a browser.

Why it suits industry

What we are doing

We are pioneering two kinds of thing, then testing and deploying them within the Greater Niagara region:

LayerWhat it is
ModulesFocused extensions that add one ability to an environment: a view, a tool, a connection to an instrument.
Complete environmentsWhole IDEs assembled for a trade or workflow from our modules and existing extensions, and white-labelled to fit.
Testing and deploymentPutting them in front of real users at real benches in the region, then running them where people work.

Ideas we are exploring

What we need

Web and TypeScript developers who want to build Theia extensions. Engineers and tradespeople who know what a bench tool ought to do. Shops willing to try early versions and say what is wrong with them. Tell us you can help build the open source software, register as an expert, or find our work on GitHub.

Niagara Assembly is not affiliated with the Eclipse Foundation or the companies named here. Names are used to describe technology that exists. Sources: Theia Platform, Eclipse Theia adopters, Theia vs VS Code.

All tools: Board · HeavyMap · Environments · Gage.

Questions, or want to help build? Write to office@niagaraassembly.com.