I mean, a windows installer (or RPM) that doesn't require a background process so that more people can access the value of the software. Even Flatpak or something if we are talking Linux specific.
Having Docker and other "enthusiast" methods of running software makes it less accessible. Having a web-stack as the goto method of writing software doesn't make sense if it limits the audience that would gain value from it.
I say this as someone who professionally maintains a web application that comes with a Windows installer, macOS traditional installation and a Linux RPM. All with desktop icons and it being pretty invisible to the user that it is a web application aside from the HTML-looking UI style.
The software is for personal finance, it isn't for a niche that makes the install/access method particuarly sane. If it were software for managing a cluster of X-thing or something ... maybe.
The system predates the popularity of installable PWAs. It is basically an exec spawning a Qt Web view and a server process then the Web view connects to local host. Server process shuts down when the Qt UI is closed. The server process is just Java with a webserver lib.
The binary is built for those OS and installed via installers idiomatic for those systems.
It defaults to use a local sqlite backend but could use any rdbms. Simple really.
You can have your cake and eat it here. If you're packaging a "web app" for local installation, you typically have a webserver sufficient for SoHo in your app. In our case, you have "]$ myapp" which runs a web view UI, local process and sqlite db.
But you can also launch it with "--serve" options to access it through a web browser and expose it on a network, with sqlite local disk database.
You can also launch with "--db=postgresql://postgres@dbhost:5432/postgres?sslmode=disable" to run it against a postgresdb.
A bit of work on the "how it runs" aspects can give great flexibility and usability for single-user cases.