You can define your own user interface using UI Kit or Custom UI.
For UI Kit apps, the Forge platform bundles and hosts your source files, enabling your app to render natively within Atlassian apps using React components from @forge/react. See the UI Kit documentation for more details.
For Custom UI apps, the Forge platform hosts your static resources, enabling your app to display within an iframe. Custom UI apps inherit modern security features to ensure high trust between Atlassian, developers, and users. See the Custom UI documentation for more details.
The resources section of your manifest.yml controls the configuration of assets that
you want to display in your app.
| Property | Type | Required | Description |
|---|---|---|---|
key |
| Yes | A key for the resource, which other modules can refer to. Must be unique within the manifest and have a maximum of 23 characters. Regex: |
path |
| Yes | For UI Kit, this is the relative path from your app's root directory to the source file containing your app (for example, |
entry (Preview) |
| No | An optional map of named entry points within this resource. Each key is an entry identifier and each value is a source filename (not a nested path) directly within the A maximum of 50 entries are allowed per resource. When When |
Use this model when each resource maps to one view. Use the tabs to switch between UI Kit and Custom UI examples.
1 2resources: - key: ui-resource path: src/frontend/index.jsx
1 2modules: jira:issuePanel: - key: hello-world-panel title: UI Kit App render: native resource: ui-resource app: id: "<your app id>" resources: - key: ui-resource path: src/frontend/index.jsx
To build a UI Kit app in Confluence and Jira, see the step-by-step tutorial.
This section describes a Forge preview feature. Preview features are deemed stable; however, they remain under active development and may be subject to shorter deprecation windows. Preview features are suitable for early adopters in production environments.
We release preview features so partners and developers can study, test, and integrate them prior to General Availability (GA). For more information, see Forge release phases: EAP, Preview, and GA.
This feature is currently available for Jira and Confluence modules. Other Atlassian apps will be supported in the future.
Use entry to define multiple named entry points inside a single resource. This is useful when multiple modules share dependencies and you want to reduce bundle duplication. Use the tabs to switch between UI Kit and Custom UI examples.
entry values are source files (.jsx, .js, and similar) relative to path. The Forge CLI bundles each entry and creates shared chunks for common dependencies.
1 2modules: confluence:globalPage: - key: my-global-page resource: app/global # <resource-key>/<entry-key> render: native confluence:globalSettings: - key: my-settings-page resource: app/settings render: native resources: - key: app path: src/frontend/ entry: global: global.jsx settings: settings.jsx
See the UI Kit multi-entry example.
To enable your app to access remote resources, you need to add egress permissions to whitelist those resources. For more information, see Permissions.
Rate this page: