Launchpad plugins
Extending an application launchpad’s shell rather than an individual app: adding header buttons, user-menu entries, frame areas or background behaviour shared across the apps it hosts. A development sandbox for launching an app is a separate concern.
Overview
A component with no views that the shell loads once at startup and that works through shell services such as Extension, FrameBoundExtension, AppLifeCycle and UserInfo instead of rendering an app. This extends the SAP Fiori launchpad for all hosted apps, including SAP apps. It differs from a development sandbox such as cds-launchpad-plugincds-launchpad-pluginIndexes every SAPUI5 application in a workspace into one sandbox launchpad served by the CDS server, so all of them can be opened from a single page while developing.independent, cap.
SAPUI5's sap.ushell.services.Extension service, since 1.120, creates shell header items and user actions and shows them on the home page or for all apps; before it, a plugin added them through sap.ushell.renderers.fiori2.Renderer.
Not covered: At SAPUI5. sap.ushell is not part of OpenUI5, so a plugin cannot be built against or run on the open-source distribution.
Scaffolding for the plugin component: Easy-UI5 generators from UI5 CommunityUI5 Communitymaintains 69 entriescommunity org, one for TypeScript on the Extension API such as generator-ui5-ts-flp-plugingenerator-ui5-ts-flp-pluginAn Easy-UI5 generator that scaffolds a SAP Fiori launchpad plugin in TypeScript with the UI5 CLI: a header button, a user menu action or a background service with no UI.community org, ui5. SAPUI5 itself ships the services a plugin calls.
Here the question is activation: which launchpad catalog and role on premise, or which business catalog in the ABAP environment, makes the shell load the plugin for a given user.
On premise, a plugin deployed as a UI5 application is activated per role through a target mapping with the intent Shell-plugin in a launchpad catalog, assigned to a role in PFCG. In the SAP BTP ABAP environment it is deployed as a Fiori application whose manifest sets sap.flp type plugin, and reached through an IAM app and a business catalog.
Not covered: Role-based activation on premise only works with the launchpad's dynamic page processing on the ICF node /sap/bc/ui2/flp.
The plugin itself is UI5 code. The system ships the activation steps above, and the community adds scaffolding for the plugin, such as generator-ui5-ts-flp-plugingenerator-ui5-ts-flp-pluginAn Easy-UI5 generator that scaffolds a SAP Fiori launchpad plugin in TypeScript with the UI5 CLI: a header button, a user menu action or a background service with no UI.community org, ui5.
No community artifact is documented here.
On BTP the plugin is an HTML5 app in the site's content, assigned to a role in SAP Build Work Zone and loaded when the site starts, with no tile.
SAP Build Work Zone loads shell plugins. In the advanced edition a plugin is an HTML5 app in the MTA whose manifest sets "type": "plugin" and hides its launcher, and the runtime loads and initialises it when the site starts; SAP's BTP documentation points to the standard edition's page for integrating apps and shell plugins.
The plugin itself is UI5 code. SAP Build Work Zone, standard editionSAP Build Work Zone, standard editionA role-based business site on BTP that puts SAP, custom-built and third-party applications and extensions, cloud and on premise, behind one point of access.sap official, btp loads it into a business site, and the community adds scaffolding for the plugin, such as generator-ui5-ts-flp-plugingenerator-ui5-ts-flp-pluginAn Easy-UI5 generator that scaffolds a SAP Fiori launchpad plugin in TypeScript with the UI5 CLI: a header button, a user menu action or a background service with no UI.community org, ui5. The standard edition's own documentation page did not load as text; its support rests on SAP's BTP documentation linking to it by that title.
No community artifact is documented here.
Artifacts
Content
Seen working
Details
Coverage
For your agent
- Ref
capability:launchpad-plugins- JSON
- /capabilities/launchpad-plugins.json
- MCP
- Connecting an agent