Since Theia IDE 1.0 was launched I thought it might be an opportunity for a new gitea feature.
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 basically a self hosted vscode (it looks like vsocde and can use vscode extensions) and comes with it's own docker container.
I think using this would be a better experience than gitlab's web IDE in terms of both UI and functionality.
I am unsure of how much work would be required for this but I would love to hear what people think about this idea
What about the extensions support?
@lunny I experimented with Theia before, for the last (git integration) you can install GitLens VS Code extension, it's compatible, at least 70% of its main fuctions work. The most problem is security, as Theia exposes console.
@lunny I experimented with Theia before, for the last (git integration) you can install GitLens VS Code extension, it's compatible, at least 70% of its main fuctions work. The most problem is security, as Theia exposes console.
Yes, some feature should be disable. Is theia a npm package?
What about the extensions support?
extensions should be supported as well.
@lunny it's a set of npm packages. To create an IDE out of core, Theia extensions and VS Code ones, you need to create a package.json
as in examples of Theia apps, define extensions and plugins there and build using their CLI. VS Code extensions can be loaded later using builtin Open-VSX registry. Security is bigger problem than you thought, there're a lot of functions relying on terminal. Probably it won't be safe to use without Docker.
Every user/repository branch will have one docker and it's difficult to know if it should be destroyed.
I think it's better to regard theia as an editor rather than a full featured IDE for gitea, or allowing gitea to integrate theia just like how it does with drone CI.
For "editor" you don't need Theia as far as I know, you need Monaco editor, which is main editor of Theia.
Maybe it's better to integrate Monaco editor with gitea for users who runs gitea on a Raspberry pi, I think...
I think that's different. Monaco editor
could help to edit single file but theia will help to change the whole branch then you can send PR online.
Maybe there could be something similar to how Gitpod handles the Theia instances. It only allows for a limited number of containers per user (this should be pre-configurable) and automatically shuts down containers when they are not being used. I think it also pre-compiles some parts to make it faster for a dev to get started.
And of course this entire online IDE should be something entirely optional so the people hosting on a Raspberry Pi don't have to worry :)
This issue has been automatically marked as stale because it has not had recent activity. I am here to help clear issues left open even if solved or waiting for more insight. This issue will be closed if no further activity occurs during the next 2 weeks. If the issue is still valid just add a comment to keep it alive. Thank you for your contributions.
Most helpful comment
I think that's different.
Monaco editor
could help to edit single file but theia will help to change the whole branch then you can send PR online.