Make sure you understand these limitations before you start developing with Forge.
Forge platform
Your site must have a *.atlassian.net site name.
Forge apps cannot be viewed by anonymous users. To use a Forge app, you must be
logged in to Jira or Confluence.
FaaS
You'll need to write your functions in a subset of Node.js. Some globals are not exposed, for
example, process (except for process.env) and queueMicrotask, which means that some NPM
packages will probably break.
The following Node built-in modules are not supported: async_hooks, child_process, cluster,
constants, dgram, dns, domain, http2, module, net, perf_hooks,
readline, repl, sys, tls, trace_events, tty, v8, vm, and worker_threads.
Some of the Confluence APIs do not support OAuth. On Confluence API documentation,
only the APIs with the OAuth scopes required entry can be called using api.asUser().
UI kit
Components ignore invalid props. Prop type validation with error messages is coming soon.
Jira
Jira Cloud REST API version 2 is not supported by the Forge lint command. Only /rest/api/3
paths are supported.
Jira issue glances and issue panels only display on the new issue view.
They do not display on the old issue view.
Jira workflow validators are only compatible with workflows of classic projects. You cannot use them
with next-gen projects.
Jira workflow validators can read values set on the transition screen during a transition only if you use Jira expression to implement it.
Confluence
Editor macros are only compatible with the Atlassian Editor. All cloud sites use the Atlassian Editor by default.
Editor macros can only be inserted by typing "/" and selecting from the quick insert menu.
Macro configuration has some known limitations:
When you copy a macro, the configuration of the original or a copy may be overwritten. This
can happen when a macro is pasted and when the configuration of a copy is updated.
When configuring a Forge macro immediately after configuring a Connect macro, the wrong configuration
form may be loaded.
The option to edit the macro displays whether the macro has configuration or not. If the macro
doesn’t have configuration, nothing happens when a user selects edit.