Oltre ad Appcelerator, sono a conoscenza di due framework di desktop gui che dispongono di un componente browser che racchiude il webkit: GTK + e Qt. Puoi fare in modo che il componente del browser riempia la finestra dell'applicazione e scrivi la maggior parte (o tutta) dell'applicazione in HTML + CSS. Se ti piace il linguaggio Python o è una libreria standard molto significativa, puoi usare i python pyQt o pyGTK.
Un'alternativa più "robusta" a Prism, se sei disposto ad andare con il motore Gecko, è XULRunner (https://developer.mozilla.org/En/XULRunner). Mentre Prism è un insieme di collegamenti leggeri al desktop per un'applicazione web, XULRunner ti permette di creare un'app completa come Firefox stesso o Thunderbird, ecc. Mentre molte applicazioni XULRunner sono scritte con XUL, è facile scrivere l'intera app usando HTML/CSS all'interno di un singolo componente WebBrowser XUL - e il tuo javascript ha ancora tutta la potenza di un'applicazione desktop nativa.
Ho scritto un paio di applicazioni desktop utilizzando XULRunner. Quasi tutto il codice delle applicazioni è HTML/CSS/Javascript, ma ho incluso il framework Python (tramite pyXPCOM e pyXPCOMext) e ho scritto un sottile strato che espone alcune funzionalità Python al Javascript. I componenti di Mozilla forniti con XULRunner ti offrono una discreta quantità di funzionalità gratuitamente, ma se ti senti di avere bisogno di più funzionalità o di una libreria di programmazione completa, Python farà il trucco. Ci sono anche collegamenti a Java. Oppure, se si desidera utilizzare librerie C o C++, è possibile creare XULRunner da zero.
Aggiornamento: Un paio di cose sono cambiate da quando ho originariamente scritto quanto sopra nel 2009. Per uno, il progetto Prisma è stata abbandonata da Mozilla Labs e successivamente interrotto del tutto alla fine del 2011 (http://www.salsitasoft.com/2011/09/08/discontinuing-webrunner/). Un'alternativa che vale la pena guardare è https://github.com/rogerwang/node-webkit.
Dec 2014 Aggiornamento: Un'altra opzione recente è Atom Shell di GitHub.Utilizza il modulo "contenuto" di Chromium, proprio come node-webkit e Chromium Embedded Framework (e lo pubblica come lib autonomo: https://github.com/brightray/libchromiumcontent). Una delle principali differenze rispetto a node-webkit è che invece di unire il ciclo degli eventi del nodo con il ciclo degli eventi di Chromium, Atom li avvia entrambi in processi separati e utilizza una combinazione di messaggi di inter-processo sync e asincrono per comunicare tra loro.
Se sei interessato a incorporare Chromium in un'applicazione C++ o .Net, c'è anche Awesomium.
fonte
2009-10-22 17:13:24
Wow buona chiamata su XULRunner. Potrebbe valere la pena sottolineare che da Firefox 3 [XULRunner viene fornito con Firefox] (https://developer.mozilla.org/en/XULRunner_tips#Using_Firefox_3_to_run_XULRunner_applications)! Basta creare uno script che usi l'eseguibile di Firefox per avviare la tua app XUL: 'percorso/a/firefox -app percorso/su/application.ini'. – styfle