Studio Developer Manual / Version 2404
Table Of ContentsWorkspace integration of a custom app follows the same rules that hold for other extensions / plugins. Basically two ways are distinguished, namely as (1) part of the Blueprint and (2) as an application plugin.
Blueprint Integration
The Blueprint integration follows the integration of the built-in apps.
-
A new custom app is simply placed under
WORKSPACE_ROOT/apps/studio-client/apps
just as the Content App and the Workflow App are. -
The app package is added to the
pnpm-workspace.yaml
. -
The app is added as a dependency to the package
@coremedia-blueprint/studio-client.studio
located inWORKSPACE_ROOT/apps/studio-client/global/studio
. -
The app is added to the
appPaths
property ofWORKSPACE_ROOT/apps/studio-client/global/studio/jangaroo.config.js
alongside the other apps. App path, name and build directory are specified here.appPaths: { "@coremedia-blueprint/studio-client.main.app": "", "@coremedia-blueprint/studio-client.workflow.app": "apps/workflow-app", "@coremedia-internal/edited-contents-app": { name: "studio-client.my-edited-contents", path: "apps/mec-app", buildDirectory: "dist" } },
Instead of specifying the app path and name like this, they can also be put in thejangaroo
entry of the app'spackage.json
."jangaroo": { "appName": "studio-client.my-edited-contents", "appPath": "apps/mec-app" }
Integration As An Application Plugin
In Section Blueprint Workspace For Developers > Concepts And Architecture > Application Plugins > Plugins For Studio Client of the Blueprint Developer Manual, it is described how Studio extensions can be added as so-called application plugins. These plugins do not need to be part of the Blueprint build but can be added dynamically later on.
A custom app as a whole can also be added as such an application plugin. In this case, the extension point to which the plugin
is added is simply studio-client
(instead of studio-client.main
or studio-client.workflow
for the Content App and Workflow App).
For the development phase of an app application plugin, the easiest way is to modify
WORKSPACE_ROOT/apps/studio-client/global/studio/jangaroo.config.js
as follows:
-
Add the directory root path of your app to the
additionalPackagesDirs
property. -
Add the app to the
appPaths
property as described above.