How to build your own Eclipse Theia application
Eclipse Theia is a modern cloud and desktop IDE platform. It allows you to build your own IDE application. What Theia offers is not a ready-to-run IDE, but a platform to build an IDE for desktop or cloud that can be adopted to match your personal or company requirements. In this blog post I’ll detail how I built my own IDE.
I am on Windows, therefore I’ll follow the instructions from Theia for Windows. To be able to build Theia on Windows, the following tools are needed:
Scoop is used to install the dependencies. Just follow the build for windows instructions. If you do not have Administrator rights / user, most probably you won’t be able to install all dependencies.
Open PowerShell iwr -useb get.scoop.sh | iex
If you have scoop already installed, update it.
Open PowerShell scoop update
Open PowerShell scoop install nvm (or update: scoop update nvm)
Open PowerShell nvm install 12.14.1
Open PowerShell nvm use 12.14.1
Open PowerShell scoop install yarn
I guess that you might be able to skip this installation. Maybe you already have the Build Tools installed or the Node.js version comes already with build tools. But the Theia documentation states that this is needed. Maybe it is necessary, maybe not.
Your Admin user might not have the required Node.js version installed. Use nvm to install 12.14.1 for the admin user.
Open PowerShell with Administrator rights nvm install 12.14.1 nvm use 12.14.1
npm install --global --production windows-build-tools --vs2015cls
With the requirements installed a Theia application can be built. Clone the repository and use yarn to build your own IDE.
git clone https://github.com/eclipse-theia/theia
You build your own Theia from source. This sounds more frightening than it is. For now, it is just to be able to access Theia running locally. No additional plugins or standalone app. With the source code cloned, all it takes is a few yarn commands.
cd theia yarn yarn browser build yarn browser start
Theia can now be accessed via a browser at http://localhost:3000
Of course, this is just a very basic example. This Theia application comes only with the default plugins. To really benefit from this application, it is necessary to include additional plugins. In my case, plugins for Fiori development are missing.