javascript - ¿Soluciones para distribuir aplicaciones HTML5 como aplicaciones de escritorio?
¿Cuáles son algunas soluciones para distribuir una aplicación de escritorio basada en HTML5?
Quiero poder distribuir mi aplicación HTML5 como una aplicación de escritorio independiente en Windows, OSX y Linux. Me gustaría que las personas pudieran hacer doble clic en el acceso directo del icono de mi aplicación para ejecutar mi programa.
No quiero que la ventana del navegador se muestre en absoluto, solo mi aplicación. ¿Es esto posible?
Respuesta #1
Aplicaciones HTML5 en 2014
Marcos por chrome/webkit
Electron (anteriormente Atom Shell)
Electron es una biblioteca de código abierto desarrollada por GitHub para construir aplicaciones de escritorio multiplataforma con HTML, CSS y JavaScript. Electron logra esto combinando Chromium y Node.js en un único entorno de ejecución y las aplicaciones pueden ser empaquetadas para Mac, Windows y Linux. (fuente)
La gente en GitHub usa esto para ofrecer su editor de código Atom como una aplicación. Tiene una API documentada y un canal de ayuda en los foros oficiales de Atom.
Node-Webkit, el enfoque más minimalista
node-webkit es un entorno de ejecución de aplicaciones basado en Chromium y node.js. Puedes escribir aplicaciones nativas en HTML y JavaScript con node-webkit. También te permite llamar a módulos de Node.js directamente desde el DOM y habilita una nueva forma de escribir aplicaciones nativas con todas las tecnologías web.
Intel está detrás de esto (?). Me han dicho que es muy tosco en los bordes.
Brackets Shell, el entorno de pruebas del editor de código de Adobe (y base de Adobe Edge)
Nota: El shell de Brackets solo se mantiene para uso del proyecto Brackets. Aunque algunas personas definitivamente han tenido éxito usándolo como un shell de aplicación para otros proyectos, no proporcionamos ningún soporte oficial para eso y no hemos hecho mucho trabajo para que el shell de la aplicación sea fácilmente reutilizable. Muchas personas probablemente encontrarán más fácil usar un proyecto como node-webkit, que es más genérico por diseño.
dice el archivo readme, pero hay bastante gente que lo hizo de todos modos.
Marcos de trabajo + Herramientas
Adobe AIR, como sugirieron otras respuestas.
El entorno de ejecución Adobe® AIR® permite a los desarrolladores empaquetar el mismo código en aplicaciones nativas para los escritorios de Windows y Mac OS, así como para iPhone, iPad, Kindle Fire, Nook Tablet y otros dispositivos Android™, alcanzando las tiendas de aplicaciones móviles para más de 500 millones de dispositivos.
Sencha es una empresa que vende herramientas para desarrolladores de aplicaciones, incluyendo desarrollo y distribución de aplicaciones html5.
Enfoques inactivos
Tide SDK (archivado el 12-07-2015 en archive.org), versión beta, descontinuado el 12 de julio de 2015
http://www.tidesdk.org/
XULRunner de Mozilla puede hacer el trabajo para ti, pero añade algo de sobrecarga.
app.js terminó el 28 de octubre de 2013 por ser superado por (https://github.com/rogerwang/node-webkit)[node-webkit].
Porque es simple y al mismo tiempo poderoso. Usando AppJS no necesitas preocuparte por programar para múltiples plataformas o aprender nuevos lenguajes y herramientas. Ya estás familiarizado con HTML, CSS y JavaScript. ¿Qué es mejor que esta pila para el desarrollo de aplicaciones? Además, AppJS utiliza Chromium en su núcleo, por lo que obtienes las últimas API de HTML 5 funcionando. Así que concéntrate en la tarea que tu aplicación debería realizar.
Mozilla Prism está descontinuado, su lema era:
Llevando aplicaciones web a tu escritorio
Prism es una aplicación que permite a los usuarios separar las aplicaciones web de su navegador y ejecutarlas directamente en su escritorio.
Respuesta #2
Puedes usar AppJS, que utiliza Nodejs y Chromium para crear aplicaciones HTML5 para escritorio. échale un vistazo: http://appjs.com Enlace de Github: https://github.com/appjs/appjs
Respuesta #3
Definitivamente revisa Titanium. Justo hoy tomé una aplicación funcional de HTML5 y con unas pocas modificaciones menores pude ponerla en Titanium y empaquetarla para Mac, Windows y Linux.
Y también soporta PHP, Python y Ruby si tu aplicación requiere procesamiento "del lado del servidor".