Forge App is frozen with placeholder animation - no errors in log

Hey team, I’ve created a new custom-ui forge app. I have been able to deploy and install, and open the project page successfully using the template setup.

As soon as I make any change, it can be as simple as change the text in the resolver, the view never presents, it just continues to animate.

There is no output in the log, not even the req log from getText.

resolver.define('getText', (req) => {
    console.log(req);
    return 'Hello, Dev!';
});

If I open localhost:8000 I see the loading and the serving file in the tunnel output.

Serving file index.html for resource main

But nothing when open the page in JIRA. The below is the output using tunnel --verbose.

Variables: {
  "input": {
    "appId": "ari:cloud:ecosystem::app/a5dad50f-1017-4e77-83d7-6a560b15394a",
    "environmentKey": "default"
  }
}
◀️  GraphQL
Request ID: 6b05b5b604454524aa843ae193d9ad01
Result: {
  "registerTunnel": {
    "success": true,
    "errors": null,
    "tunnelId": "630d22ee-0565-4b36-97ba-972acd748f22",
    "tunnelToken": "eyJhIjoiMWY2YzEyYTE2ZmNlMWM5OTFhNzM2NWEzYTk1ZTJlMGIiLCJ0IjoiNjMwZDIyZWUtMDU2NS00YjM2LTk3YmEtOTcyYWNkNzQ4ZjIyIiwicyI6ImNISnZaRjgyTkRJNFptWTRaREZrTkRZek9UVTVNekJoWWpRMU1tUmZNV0ppWkRGa04yWXRPVE00TkMwMFpETTVMV0ZqTnpBdFkyWmxZMk5sWlRZME0ySXoifQ==",
    "tunnelUrl": "https://630d22ee-0565-4b36-97ba-972acd748f22.tunnel.atlassian-dev.net"
  }
}

How can I diagnose what is causing this? I’ve tried creating different forge apps and see the same behaviour.

Cheers,
Steve

Okay, more testing with this today and it renders my app, if I preview changes in Chrome with a tunnel running.

If I have a tunnel active, load the page on either Safari (MacOS) or Safari (iPad OS) it fails to display the page and nothing appears in the logs. It shows the placeholder animation, two bars with the highlight animating left to right.

I have added this at the top my src/index.js and it never appears in the logs when using the tunnel/safari combo.

import Resolver from '@forge/resolver';
import { getAppContext, storage } from '@forge/api';

const context = getAppContext();
console.log(context.environmentType);
console.log(context.appVersion);

Mac OS: Sonoma 14.5
Safari: Version 17.5 (19618.2.12.11.6)

If I can provide any further info please let me know. I’ll stick with Chrome for now.

1 Like

What can I say? It seems the developers don’t like Safari — only Chrome and Firefox.

https://developer.atlassian.com/platform/forge/tunneling/#tunneling-with-custom-ui

Tunneling with custom UI apps is only supported on Chrome and Firefox browsers.

1 Like