Ich habe vor Kurzem das GRW eines neu erschienen Rollenspielsystems in die Finger gekriegt. Nachdem ich bereits ein verlagsseitig geliefertes Spreadsheet zur Charaktererstellung aufpoliert habe, spiele ich jetzt mit dem Gedanken, eine Charakterverwaltung zu programmieren.

Natürlich sind Charakterverwaltungen keine irrsinnig komplexen Programme. Prinzipiell könnte ich das mit HTML5 und JavaScript relativ einfach umgesetzt kriegen, wenn da nicht ein nerviges Problem wäre: Javascript hat keinen Zugriff auf das Dateisystem und auch die HTML5 File API kann Dateien nur lesen und nicht schreiben.

Daraus hat sich für mich eine allgemeine Frage ergeben: Welche Möglichkeiten habe ich, eine HTML-basierte Anwendung lokal zu betreiben und die Daten zu speichern? Natürlich sollte die Anwendung auf allen Desktop-Plattformen funktionieren und jegliche Abhängigkeit von Onlinediensten ist sofortiges Ausschlußkriterium.

Ich weiß, daß ich localStorage benutzen kann, aber localStorage ist browsergebunden und idR. auf maximal 5 MiB beschränkt. Das ist okay für Autosave, aber nicht für allgemeine Arbeit.

Es gibt die Möglichkeit, ein Flash-Applet einzubinden, das nichts anderes tut, als eine Datei zu schreiben. Dummerweise brauche ich dann Flash und das Applet könnte je nach Browserkonfiguration nicht mal sofort verfügbar sein.

Als Letztes fällt mir noch XULRunner ein. Wenn ich nicht vorhabe, mich mit XUL zu befassen, könnte ich einfach einen Browser-Viewport über die ganze Größe der Anwendung aufmachen und meinen Kram darin anzeigen; speichern würde ich dann (sofern möglich) über XUL-Hooks im JS.


Übersehe ich etwas? Gibt es ein Framework, mit dem ich den Kram einfach gemacht kriege? Oder ist letztenendes Java weiterhin das Nonplusultra für plattformübergreifende Desktopanwendungen?