Das ist aufwendig, dafür hätte man aber endlich wieder eine moderne Benutzerfläche.
Man könnte so vorgehen, dass man Sparkle oder Jupiter als Grundlage nimmt, den existierenden Code wrapt und Endpunkte zur Verfügung stellt. Als nächstes erstellt man zu den Endpunkten Frontend Code für Web und App. Das neue Webfrontend existiert solange gleichzeitig mit dem alten, bis es z.B. 90% der Funktionen hat. Dann wird das alte Webfrontend nicht mehr angeboten und der Wrapper im Backend kann schrittweise ausgetauscht werden.
Ist aufwendig, aber ein realistischer Pfad zu einer modernen UI. Vor allem, weil man Sparkle bzw. Jupiter erstmal weiterlaufen lassen kann und dadurch nicht so viel mehr schreiben muss.