React-based app does not launch

I have a React-based app (with Node.js backend) that no longer launches as of AmigaOS v2.3.0. I noticed via AmigaOS v2.3 released! that in manifest.json, http_gui_port is now app_route, so I changed that, but the app still does not appear when clicked on the launcher. Logs via journalctl show that the backend is ready and serving on the specified port, but the browser instance does not appear. How would I go about debugging why?

Hi @genkikondo,

I’ve see this behavior myself and I believe we have a fix, but I won’t be able to check until Monday. I will get back to you first thing in the morning! :wink:

Hey @genkikondo, as promised I was checking with Ian and he says that if your service is starting, then the issues is probably at your manifest file. Can you share it with us?

One tricky thing is that the port now need to be a string. Are you using the “”?

My manifest looks like:

{
  "services": {
    "my-custom-app": {
      "name": "my-custom-app",
      "type": "app",
      "exec_cmd": "/mnt/managed_home/farm-ng-user-genkikondo/my-custom-app/scripts/amiga_run_app.sh",
      "app_route": "3000",
      "display_name": "My Custom App",
      "autostart": false
    }
  }
}

amiga_run_app.sh just cds into the app dir and calls npm run start.

Hey @genkikondo

so it looks like we are trying to serve the frontend on the brain with the npm run start command. Have you tried calling the main.py directly?

here’s how you can set it up:

"exec_cmd": "/mnt/managed_home/farm-ng-user-YOUR_USER_HERE/amiga-app-template/venv/bin/python3
                   /mnt/managed_home/farm-ng-user-YOUR_USER_HERE/amiga-app-template/main.py",

make sure to double check the directory path to your venv and your app.

If this doesn’t work, I’d like to check the code. Can you share your amiga’s name and a time window you can leave it on for me to ssh? Feel free to shoot me an email with that or set up a call using this support call link.

Unfortunately the app is built with Next.js (and thus Node.js backend) so this doesn’t apply.

I sent you an email with details.