Skip to main content

Add an app to your smart desktop

Apps are at the heart of your smart desktop, so you need to be able to add one. It doesn’t matter what kind of an app it is, whether web or native. You add apps of all types the same way, by adding a config entry to your appD. The details of course will be different for each.

Finsemble is config driven. This means that you can specify a lot of app properties and behaviors via config. For example, you can specify whether the app appears in menus, how interoperates with other apps (e.g. whether it can resolve a particular intent), what it looks like (that is, what icons, tooltips, title bar buttons and so on it uses), what preload scripts it needs, or how it's render processes should be managed. You can also specify its window management behavior.

There are 2 ways to add an app to your smart desktop. The easier one is to use the Manage apps screen of your Smart Desktop Designer (SDD). SDD will configure appD for you without any coding on your part. All you have to do is specify values for some parameters, and the UI guides you through the process. Behind the scenes, SDD creates a config entry for your app and adds it to your appD.

Using SDD isn’t always possible. For example, if you have a smart desktop that has already been published and customized, you need to configure the app manually by creating the appD entry for your app yourself and adding it to your configuration. You can do so statically by adding an entry in the /public/configs/application/appd.json file, or dynamically, by using a config client at authentication.

Here is the appD entry for our ChartIQ example app:

"ChartIQ Example App": {
"name": "ChartIQ Example App",
"appId": "ChartIQ Example App",
"description": "Visualize market data in the leading FDC3 compliant technical chart.",
"manifest": {
"window": {
"affinity": "test",
"url": "https://assets.finsemble.com/components/chart/technical-analysis-chart.html",
"width": 800,
"height": 600,
"options": {
"minWidth": 175
}
},
"foreign": {
"components": {
"App Launcher": {
"launchableByUser": true
},
"Toolbar": {
"iconClass": "ff-chart-advanced"
},
"Window Manager": {
"FSBLHeader": true,
"persistWindowState": true
}
}
},
"interop": {
"selectConnect": [
{
"contextType": "layout",
"fwd": "#Workspace"
},
{
"contextType": "fdc3.instrument",
"cc": "#Workspace"
}
]
}
},
"version": "1.0.0",
"tooltip": "ChartIQ Technical Chart",
"images": [
{
"url": "https://i.imgur.com/10C3LdH.png",
"tooltip": "ChartIQ FDC3 compatible chart"
}
],
"tags": ["charts", "market data", "visualization", "graphics", "fdc3"],
"contactEmail": "info@cosaic.io",
"supportEmail": "support@finsemble.com",
"publisher": "Cosaic",
"intents": [
{
"name": "ViewChart",
"displayName": "View Chart",
"contexts": ["fdc3.instrument"]
}
]
},


See also

The AppD format

Configuration

Config reference

FDC3 appD info