If all the assets are downloaded from your website then make it a PWA. Example - ms outlook (web version).
If you want to put the assets on the user's computer run it as a webserver on localhost and launch it in the user's already installed browser. Example - syncthing.
Browser weirdness is not a thing anymore. So packing your own build with the application is super weird.
I thought of distributing a node server, but it is going to non-sophisticated users who expect a EXE or DMG or tar.gz and a binary. Also, it interfaces with a wide range of system hardware, USB, VISA, serial ports, GPIB, etc. I tried to build a docker image, but that also was too complex for the end user, and it had some serious hardware issues with some USB devices.
So you have requirements to interface to low level peripherals, and you need to do this in the worst language ever invented, which is at the same time one of the highest level languages? It boggles my mind.
If you want to put the assets on the user's computer run it as a webserver on localhost and launch it in the user's already installed browser. Example - syncthing.
Browser weirdness is not a thing anymore. So packing your own build with the application is super weird.