What about self-update notification? Could reuse whole logic, and just have a built-in version file content for itself (and hosted version file with the repo)?
Also updating Ship Direction Marker still fails (leaves a temp folder with the mod inside the temp folder) - probably due to _ in modId. Easiest to reproduce is to install latest, and try to upgrade to the same version.
Similarly, something odd happened to me installing an updated to my mod - Stelnet (from 1.1.2 to 1.1.3) - the update ended in `stelnet-1.1.3`, UI didn't refresh (was still showing outdated even though that one got removed) and trying to re-update ends up with another case of `temp_` folder with mod inside it. Easiest to reproduce - install latest and upgrade to the same version, once for the bug mentioned here, second time for the bug above.
I think both can be tracked down to the program making `modid-version` folder, instead of just using `modid`.
Minor usability issue: start fresh program (no config yet), go to settings, select Starsector folder and tick "enable VM settings" - they are unavailable. Close the app, open again - now you can edit VM settings.
Finally, sorting (initial, or when no column sorting is selected) could be: outdated, unsupported (as they will require manual check), up-to-date with each category just sorted alphabetically.