What's the minimum Theia configuration with VS Code plugin support?

What is the mimimum set of packages I need to have a working Theia instance?
I am iterating through this at the moment, and it seems I still need lots of things.

        "@theia/core": "next",
        "@theia/editor": "next",
        "@theia/monaco": "next",
        "@theia/plugin-dev": "next",
        "@theia/plugin-ext": "next",
        "@theia/plugin-ext-vscode": "next"

With this set of packages, I still get this error:

index.js:71 ReferenceError: monaco is not defined
    at e.register (monaco-theme-registry.ts:83)
    at t.MonacoThemeRegistry.t.MonacoThemeRegistry (monaco-theme-registry.ts:118)
    at Object.<anonymous> (monaco-theme-registry.ts:115)
    at n (bootstrap:19)
    at Object.<anonymous> (monaco-textmate-service.ts:25)
    at n (bootstrap:19)
    at Object.<anonymous> (index.ts:19)
    at n (bootstrap:19)
    at Object.<anonymous> (yaml-frontend-module.ts:17)
    at n (bootstrap:19)

Thanks for advising.

[original thread by Dominique Rochefort]

What were the steps you did to try out the package.json with those extensions defined?

I was able to successfully build an application with the ext you mentioned:

{
    "private": true,
    "dependencies": {
        "typescript": "latest",
        "@theia/core": "next",
        "@theia/editor": "next",
        "@theia/monaco": "next",
        "@theia/plugin-dev": "next",
        "@theia/plugin-ext": "next",
        "@theia/plugin-ext-vscode": "next"
    },
    "devDependencies": {
        "@theia/cli": "next"
    }
}

Steps:

  1. yarn

  2. yarn theia build

  3. yarn theia start

As defined here

[Dominique Rochefort]

Thanks! I just found the issue comes from a custom Theia extension I am trying to build. I’m still investigating the issue, but the errors comes up only when I add my extension in the list. Although I only extend core contributions, nothing to do with Monaco.

[Dominique Rochefort]

I have resolved the issue. My Theia extension package was depending on @theia/yaml”: “latest”,, changing to use @theia/yaml”: “next”, resolved my issue.

yes, unfortunately we cannot mix different versions of extensions together (ex: latest and next). There will be conflicts in attempting to resolve both versions.