Skip to content

Fortified IDDocs

Launchpad

Overview of the optional Launchpad experience for Forms in Control.

Launchpad in Control gives you a more guided way to present Forms to end users. Instead of sending users directly to separate flow URLs, you can let them start from a shared Launchpad view with navigation, categories, and favorites.

This is useful when you want to gather several related flows in one place and make them easier to discover. At the same time, the existing direct access to individual flows can still be used exactly as before.

Launchpad is an optional layer on top of Forms.

It gives users a start page where available flows can be shown in a structured menu. This can make the experience feel more like an application, especially when you have many flows for different tasks.

Typical examples:

  • delegated administration for users and groups
  • self-service tasks collected in one place
  • request and approval flows grouped by area

Launchpad does not replace ordinary flow URLs.

Each flow can still be accessed directly, for example when:

  • a user opens a bookmarked flow
  • another system links directly to a flow
  • you want a simpler experience without Launchpad

In other words, Launchpad mode is optional. You can use Launchpad, direct flow access, or both.

Launchpad mode is configured in the launchpad section of the Forms configuration.

Name Description Default
enabled Turns Launchpad on or off. If it is missing or false, Control behaves as a regular Forms setup without the Launchpad UI. false
path Defines where Launchpad is available. /launchpad
webroot_dir Path to the built Launchpad UI assets. N/A
default_launch_mode Defines how flows are opened from Launchpad. Supported values: embedded, direct. embedded
default_favorite_flow_ids List of flow IDs that should be shown as favorites when Launchpad loads. N/A

In this example:

  • Forms is available under /control
  • Launchpad is available under /control/launchpad/
  • the regular Forms UI and the Launchpad UI use separate web roots
  • flows are still loaded from the normal Forms configuration
  • edituser and editgroup are shown as default favorites

The webroot_dir values above are examples. Use the paths that match your own environment.

If the Control context path is /control and the Launchpad path is /launchpad, Launchpad is available at:

/control/launchpad/

The Launchpad menu is built from the flows that are already configured in Control.

This means you do not create a separate list of Launchpad entries. Instead, Launchpad reads the configured flows and presents the ones the user is allowed to access and that are not explicitly hidden from Launchpad.

Use hide_in_launchpad on a flow when it should remain available by direct URL or other navigation, but should not be listed in the Launchpad navigation.

Example:

{
"name": "internal-tool",
"public": true,
"hide_in_launchpad": true,
"steps": "@include:steps/*.json"
}

The default is false, so flows are shown in Launchpad unless they opt out. This setting only controls whether the flow appears in the Launchpad navigation. It does not grant or remove access to the flow itself.

Flows can be grouped in the Launchpad menu by using the category field on the flow.

Example:

{
"name": "createuser",
"display_name": "Create user",
"category": "Users/Create"
}

This creates a simple menu structure where the flow is shown under:

  • Users
  • Create

In practice, the most common and useful setup is a main category with a subcategory.

If a flow does not have a category, it is shown directly at the Launchpad root level. The root level can contain both category entries and individual flow entries.

Launchpad sorts categories, subcategories, and flows case-insensitively so the menu remains predictable even when display names use different letter casing.

Launchpad can highlight selected flows as favorites.

Default favorites are configured in the Launchpad settings by listing the flow IDs that should be shown as favorites when Launchpad loads.

Example:

{
"launchpad": {
"default_favorite_flow_ids": [
"edituser",
"editgroup"
]
}
}

Launchpad respects the same access rules as the flows themselves.

This means:

  • users only see flows they are allowed to access
  • protected flows do not show up as empty or broken menu options
  • public flows can still be shown without requiring login

The filtering is done server-side before the navigation is sent to the Launchpad UI.

If all flows shown in Launchpad are public, the user can open Launchpad without authenticating.

If one or more flows require authentication, Launchpad can redirect the user to log in before showing the protected content.

After login, the user is returned to Launchpad again.

embedded is useful when you want Launchpad to feel like one connected experience, where users stay inside the same layout while working through a flow.

direct is useful when you want Launchpad to act more like a launch page, where each flow opens in its own normal view.

Both approaches use the same underlying flows.

Launchpad is a good fit when you want to:

  • collect many flows in one place
  • make self-service and delegated administration easier to navigate
  • present Control with a more application-like entry point

Direct flow access is still the better choice when a specific flow should be launched in a simple and focused way.