If you want to a build custom programming language, the Eclipse ecosystem offers a complete toolstack to build a web-based IDE for it: Theia as the web-IDE framework, Xtext and lsp4j to implement a language server, Sprotty to add diagram support and many more.
Such a language server can be re-used in almost every other IDEs. But it usually requires IDE-specific packaging including the implementation of important services like syntax highlighting, code snippets or bracket matching which are not covered by the language server protocol. VS Code extensions are the new default packaging for language plug-ins in Theia. So if you want to address a huge community, VS Code extensions seem to be an easy choice.
In this session, you will learn how to build VS Code extensions with an Xtext-based language server and Sprotty visualization. We will cover the base architecture of a VS Code extension, how a language server is hooked up and configuration of highlighting and other services. After that, we will explain how to you can add a WebView to provide Sprotty diagrams.