I'm starting a project to scratch an itch of mine and I'd like for it to be available for all 3 major desktop platforms. This is the point in projects where I seem to have grown a big case of Analysis Paralysis.<p>I have decided to use a web UI for a desktop app. My current research leads me to .Net/Nancy/Kestrel, or Java. The UI will be a self-hosted SPA talking to localhost. I am concerned about users on non-Windows platforms reluctance to use dotnet core and also to less technical users on Windows needing a current Java JRE installed, since I fear it may have fallen somewhat out of favor. I think a large portion of users would be part of an enterprise.<p>My preference, at least for development, would be Java but that's because I have much more experience in Java than C#/.Net.<p>I supposed I could do it in Python, but I'm not nuts about the deployment story for folks listed above. I'm not interested in Electron.<p>I thought I'd see what HN had to say about the choice.
I would suggest perhaps a language/framework that compiles to a single binary. I'm assuming that the back-end doesn't need to do any heavy lifting. You could use Go, Crystal/Kemal, Nim/Jester or other combination.<p>Do you actually need the same deployed code to run on each platform (Net/Java) or is it sufficient to have common source that produces a binary for each?