Build your own app
Use packages/app as a template: copy it or add a new workspace package.
Steps
Create or copy the app package
Add a new package underpackages/(e.g.packages/my-app) or duplicatepackages/app. Ensure the rootpackage.jsonworkspacesincludespackages/*.Install and wire the app
In the app package, depend on@kispace-io/coreand the extensions you need (@kispace-io/extension-*).Entry point
In your app entry (e.g.main.ts):- Call
applyAppHostConfig({ packageInfo, marketplaceCatalogUrls })if you use the marketplace. - Import the extensions you need (side-effect imports so they register).
- Call
appLoaderService.registerApp(appDefinition, { autoStart: true }).
- Call
App definition
Minimal example:
ts
import { appLoaderService, type RenderDescriptor } from '@kispace-io/core';
appLoaderService.registerApp(
{
id: 'my-app',
name: 'My App',
version: '1.0.0',
extensions: [
'@kispace-io/extension-command-palette',
'@kispace-io/extension-settings-tree',
'@kispace-io/extension-ai-system',
],
render: {
tag: 'k-standard-layout',
attributes: { 'show-bottom-panel': 'true' },
} satisfies RenderDescriptor,
},
{ autoStart: true }
);- Run and build
From the repo root:npm run dev(or run the app package’s dev script). For production:npm run buildthen build the app package; output will be in the app’sdist/.
See Concepts: Apps for all AppDefinition options.