UI Kit components
Jira UI Kit components
UI Kit hooks
Forge bridge APIs
Jira bridge APIs
Upgrade UI Kit versions
Previous versions

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.

Frame (Preview)

Frame component acts as a container for rendering static frontend applications, such as HTML, CSS, and JavaScript, ensuring seamless integration with the UI Kit. It provides flexibility in implementing desired user interfaces and supports communication with the main app through the Events API, allowing bidirectional and broadcast communication.

Using Frame

To add the Frame component to your app:

1
2
import { Frame } from '@forge/react';

Props

The Fame component has the following properties that need to be considered:

NameTypeRequiredUsageDescription
resourcestringYesFrame componentThis is the key of the resource to be loaded in the Frame. The resource must be defined in the app’s manifest.yml file.
For more information on defining a resource, see here.

Example

1
2
import React from 'react';
import ForgeReconciler, { Text, Frame } from '@forge/react';

const App = () => {
  return (
    <>
      <Text>[UI Kit] Hello world!</Text>
      <Frame resource="example-frame-resource" />
    </>
  );
};

ForgeReconciler.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>
);

Get started

Known limitations and issues

Limitations

  • Only a single Frame component can be rendered per module to minimize potential performance impact.
  • The Frame component is only supported on Confluence, Jira and Compass.
  • Only modules that currently support Custom UI will support Frame.
  • If the Frame component does not resize correctly within the application upon layout updates, we recommend checking and confirming that the sizing properties of the root container are defined using non-viewport-related units such as %, px, em, and so on. This limitation is because the Frame component's root container does not well support viewport-based relative sizing units like vh and vw.

Rate this page: