0.1.1 • Published 8 years ago

generator-theia v0.1.1

Weekly downloads
3
License
Apache-2.0
Repository
-
Last release
8 years ago

Theia Generator

Getting started

In the generator-theia directory:

  • yarn
  • yarn link to install generator-theia as a global module
  • yarn global add yo to install yo globally

In the example root directory:

  • yo theia:browser to generate the browser app
  • yo theia:electron to generate the electron app

Overwrite all existing files if any.

Providing extensions

A node package can declare several extensions via theiaExtensions property in package.json:

{
    "theiaExtensions": [{
      "frontend": "lib/myExtension/browser/myextension-frontend-module",
      "backend": "lib/myExtension/node/myextension-backend-module",
    }, {
      "frontend": "lib/myExtension2/browser/myextension2-browser-module",
      "frontendElectron": "lib/myExtension2/electron-browser/myextension2-electron-browser-module",
      "backend": "lib/myExtension2/node/myextension2-node-module",
      "backendElectron": "lib/myExtension2/electron-main/myextension2-electron-main-module"
    }]
}

Each extension can consist of the following modules:

  • frontend is used in the browser env and as well in the electron if frontendElectron is not provided
  • frontendElectron is used in the electron env
  • backend is used in the node env and as well in the electron env if backendElectron is not provided
  • backendElectron is used in the electron env

An extension module should have a default export of ContainerModule | Promise<ContainerModule> type.

Consuming extensions

A node package should contain theia.package.json listing node packages providing extensions as dependencies. Theia generator based on theia.package.json generates package.json as well as other artifacts corresponding to the env.

0.1.1

8 years ago

0.1.0

8 years ago