SlideShare uma empresa Scribd logo
1 de 16
CONVERTIR WEB APP`S EN DESKTOP APP`S
CON NODE-WEBKIT
APP RUNTIME BASED ON CHROMIUM AND NODE.JS
JOSE GRATEREAUX
@JGRATEREAUX
https://github.com/gratereaux
CONCEPTOS BÁSICOS
¿node.JS?
ALGUNAS APPS
TweetDeck Sputnik (RSS reader)
Kindle Cloud Reader Weather-Map
ALGUNAS APPS
Popcorn Time LexiMail
A wizard`s Lizard (Game) Sqwiggle
¿QUE ES NODE-WEBKIT?
• Es un web app runtime
¿QUE ES NODE-WEBKIT?
• Integra funciones de Node.js dentro del
webkit
¿QUE ES NODE-WEBKIT?
• Multiplataforma, Se puede ejecutar en OS X,
Windows y Linux.
¿QUE ES NODE-WEBKIT?
• Fácil distribución y empaquetamiento
¿QUE ES NODE-WEBKIT?
• Puedes usar módulos de Node.js
¿QUE ES NODE-WEBKIT?
• Basado en Chromium y Node.js.
• Creado y desarrollado en Intel.
• Open source y publicado a github en Diciembre 2011.
• Soporta casi todas las características de HTML5.
• Audio y video soportado.
• Frameworks de juegos HTML5 como por ejemplo cocos2d trabajan
perfecto en node-webkit.
• Puedes instalar modulos de node.js usando el npm.
• Mas info en :
– https://github.com/rogerwang/node-webkit
EJEMPLOS - CASOS DE USO
• File explorer & file editor
– Puedes usar el modulo de node filesistem (fs) o HTML5 file API
– Puedes invocar dialogo de file select de javascript.
– Soporte de Dragging de archivos
– Demo de Node-webkit file explorer:
• https://github.com/zcbenz/nw-file-explorer
• Media applications
– getUserMedia es soportado en node-webkit.
– Camara y Audio recording es soportado (<video> y <audio> tags)
• Estructura de una app
CREANDO NUESTRO PROYECTO
CREANDO NUESTRO PROYECTO
Name: representa el nombre de
directorio de configuracion del app. En
Linux el app data sera guardado en
‘~/.config/nw-demo’, en Mac OS X en
‘~/Library/Application Support/nw-
demo’.
Window contiene la configuracion
de la ventana. Donde puedes
configurar ancho, alto, toolbar,
posicion, etc…
En Main se especifica la pagina
inicial que cargará el app.
CREANDO NUESTRO PROYECTO
• Al finalizar los codigos solo debemos:
– Empaquetarlo y ejecutarlo:
• Comprimirlo en un Zip
• Y ejecutarlo nw app.zip
• Podemos crear un standalone package con un
ejecutable
– En linux: $ cat nw app.nw > app
– En Windows: :/ copy /b nw.exe + app.nw nombre.exe
– En Mac OS X: cp app.nw nw/Contents/Resources/
Vamos a ver los códigos
CREANDO NUESTRO PROYECTO
GRACIAS
¿PREGUNTAS?
Algunos ejemplos:
https://github.com/zcbenz/nw-sample-apps

Mais conteúdo relacionado

Mais procurados

Presentación Adobe AIR para PlayBook - Reto BlackBerry
Presentación Adobe AIR para PlayBook - Reto BlackBerryPresentación Adobe AIR para PlayBook - Reto BlackBerry
Presentación Adobe AIR para PlayBook - Reto BlackBerryEdgar Parada
 
Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Juan Fede
 
Desarrollando aplicaciones iOS con datos en tiempo real con Firebase y Swift
Desarrollando aplicaciones iOS con datos en tiempo real con Firebase y SwiftDesarrollando aplicaciones iOS con datos en tiempo real con Firebase y Swift
Desarrollando aplicaciones iOS con datos en tiempo real con Firebase y SwiftSoftware Guru
 
Git y drupal
Git y drupalGit y drupal
Git y drupalJuampy NR
 
Testeando aplicaciones Kubernetes: escalabilidad y tolerancia a fallos
Testeando aplicaciones Kubernetes: escalabilidad y tolerancia a fallosTesteando aplicaciones Kubernetes: escalabilidad y tolerancia a fallos
Testeando aplicaciones Kubernetes: escalabilidad y tolerancia a fallosMicael Gallego
 
Mi primera App con GAE
Mi primera App con GAEMi primera App con GAE
Mi primera App con GAEGDG Lima
 
Sácale todo el provecho a Stylus el mejor pre procesador de CSS
Sácale todo el provecho a Stylus el mejor pre procesador de CSSSácale todo el provecho a Stylus el mejor pre procesador de CSS
Sácale todo el provecho a Stylus el mejor pre procesador de CSSLeonidas Esteban González
 
Aplicaciones Real-Time con SignalR
Aplicaciones Real-Time con SignalRAplicaciones Real-Time con SignalR
Aplicaciones Real-Time con SignalRRodolfo Finochietti
 
Flujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontendFlujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontendLeonidas Esteban González
 
Javascript vuela en primera clase con Firefox OS
Javascript vuela en primera clase con Firefox OSJavascript vuela en primera clase con Firefox OS
Javascript vuela en primera clase con Firefox OSRoberto Luis Bisbé
 
Gestión de documentos Office desde nuestras apps .NET con Open XML SDK
Gestión de documentos Office desde nuestras apps .NET con Open XML SDKGestión de documentos Office desde nuestras apps .NET con Open XML SDK
Gestión de documentos Office desde nuestras apps .NET con Open XML SDKLuis Beltran
 
Mi primera app con GAE y GWT
Mi primera app con GAE y GWTMi primera app con GAE y GWT
Mi primera app con GAE y GWTGDG Lima
 
De escritorio a Javascript, nuestra experiencia desde las trincheras
De escritorio a Javascript, nuestra experiencia desde las trincherasDe escritorio a Javascript, nuestra experiencia desde las trincheras
De escritorio a Javascript, nuestra experiencia desde las trincherasRoberto Luis Bisbé
 
Introducción al framework Symfony
Introducción al framework SymfonyIntroducción al framework Symfony
Introducción al framework SymfonyAlejandro Hernández
 

Mais procurados (20)

Presentación Adobe AIR para PlayBook - Reto BlackBerry
Presentación Adobe AIR para PlayBook - Reto BlackBerryPresentación Adobe AIR para PlayBook - Reto BlackBerry
Presentación Adobe AIR para PlayBook - Reto BlackBerry
 
Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7
 
Desarrollando aplicaciones iOS con datos en tiempo real con Firebase y Swift
Desarrollando aplicaciones iOS con datos en tiempo real con Firebase y SwiftDesarrollando aplicaciones iOS con datos en tiempo real con Firebase y Swift
Desarrollando aplicaciones iOS con datos en tiempo real con Firebase y Swift
 
React redux workshop
React redux workshopReact redux workshop
React redux workshop
 
Git y drupal
Git y drupalGit y drupal
Git y drupal
 
IoT y Dispositivos
IoT y DispositivosIoT y Dispositivos
IoT y Dispositivos
 
Azure IoT Hub
Azure IoT HubAzure IoT Hub
Azure IoT Hub
 
Testeando aplicaciones Kubernetes: escalabilidad y tolerancia a fallos
Testeando aplicaciones Kubernetes: escalabilidad y tolerancia a fallosTesteando aplicaciones Kubernetes: escalabilidad y tolerancia a fallos
Testeando aplicaciones Kubernetes: escalabilidad y tolerancia a fallos
 
Mi primera App con GAE
Mi primera App con GAEMi primera App con GAE
Mi primera App con GAE
 
Sácale todo el provecho a Stylus el mejor pre procesador de CSS
Sácale todo el provecho a Stylus el mejor pre procesador de CSSSácale todo el provecho a Stylus el mejor pre procesador de CSS
Sácale todo el provecho a Stylus el mejor pre procesador de CSS
 
Gulp+bower
Gulp+bowerGulp+bower
Gulp+bower
 
Aplicaciones Real-Time con SignalR
Aplicaciones Real-Time con SignalRAplicaciones Real-Time con SignalR
Aplicaciones Real-Time con SignalR
 
Flujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontendFlujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontend
 
Javascript vuela en primera clase con Firefox OS
Javascript vuela en primera clase con Firefox OSJavascript vuela en primera clase con Firefox OS
Javascript vuela en primera clase con Firefox OS
 
Gestión de documentos Office desde nuestras apps .NET con Open XML SDK
Gestión de documentos Office desde nuestras apps .NET con Open XML SDKGestión de documentos Office desde nuestras apps .NET con Open XML SDK
Gestión de documentos Office desde nuestras apps .NET con Open XML SDK
 
2018.sps madrid.spfx workshop
2018.sps madrid.spfx workshop2018.sps madrid.spfx workshop
2018.sps madrid.spfx workshop
 
Introduccion a Node.js
Introduccion a Node.jsIntroduccion a Node.js
Introduccion a Node.js
 
Mi primera app con GAE y GWT
Mi primera app con GAE y GWTMi primera app con GAE y GWT
Mi primera app con GAE y GWT
 
De escritorio a Javascript, nuestra experiencia desde las trincheras
De escritorio a Javascript, nuestra experiencia desde las trincherasDe escritorio a Javascript, nuestra experiencia desde las trincheras
De escritorio a Javascript, nuestra experiencia desde las trincheras
 
Introducción al framework Symfony
Introducción al framework SymfonyIntroducción al framework Symfony
Introducción al framework Symfony
 

Destaque

Client Case Study Media Publishing
Client Case Study   Media PublishingClient Case Study   Media Publishing
Client Case Study Media PublishingAmy_Anderson
 
Comunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSf
Comunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSfComunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSf
Comunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSfAvanzaSf
 
Construcción y operación del centro comercial suburbia carmen
Construcción y operación del centro comercial suburbia carmenConstrucción y operación del centro comercial suburbia carmen
Construcción y operación del centro comercial suburbia carmenCampechano100
 
La Persona Ante El Cosmos I
La Persona Ante El Cosmos ILa Persona Ante El Cosmos I
La Persona Ante El Cosmos Izarasala
 
Reducing IT Complexity to Accelerate Digital Business
Reducing IT Complexity to Accelerate Digital BusinessReducing IT Complexity to Accelerate Digital Business
Reducing IT Complexity to Accelerate Digital BusinessCognizant
 
талалаївка рем
талалаївка ремталалаївка рем
талалаївка ремOksana Stelmakh
 
Uno de los nuevos desafíos del programa escolar 2008 estadística
Uno de los nuevos desafíos del programa escolar 2008   estadísticaUno de los nuevos desafíos del programa escolar 2008   estadística
Uno de los nuevos desafíos del programa escolar 2008 estadísticaDaniela María Zabala Filippini
 
Practical Contract Law Understanding & Drafting Contracts for Non-Lawyers
Practical Contract Law Understanding & Drafting Contracts for Non-LawyersPractical Contract Law Understanding & Drafting Contracts for Non-Lawyers
Practical Contract Law Understanding & Drafting Contracts for Non-Lawyersrockporshe
 
Historia del canton paute
Historia del canton pauteHistoria del canton paute
Historia del canton pautecrmen
 
Comercio electrónico - Conceptos, Funcionalidad, Ejemplos
Comercio electrónico - Conceptos, Funcionalidad, EjemplosComercio electrónico - Conceptos, Funcionalidad, Ejemplos
Comercio electrónico - Conceptos, Funcionalidad, EjemplosCecyCueva
 

Destaque (20)

LBC newsletter issue 11
LBC newsletter issue 11LBC newsletter issue 11
LBC newsletter issue 11
 
Web 2
Web 2Web 2
Web 2
 
Ri casipe bajo
Ri casipe bajoRi casipe bajo
Ri casipe bajo
 
CONECTATE 105: VEJEZ, CIELO
CONECTATE 105: VEJEZ, CIELOCONECTATE 105: VEJEZ, CIELO
CONECTATE 105: VEJEZ, CIELO
 
Client Case Study Media Publishing
Client Case Study   Media PublishingClient Case Study   Media Publishing
Client Case Study Media Publishing
 
Firmablogging - hvorfor
Firmablogging - hvorforFirmablogging - hvorfor
Firmablogging - hvorfor
 
Mobile only by google Breaking Mobile 2015
Mobile only by google Breaking Mobile 2015Mobile only by google Breaking Mobile 2015
Mobile only by google Breaking Mobile 2015
 
Comunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSf
Comunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSfComunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSf
Comunicación para el éxito. Taller de Oratoria 2014 con @Matytchey y @AvanzaSf
 
Construcción y operación del centro comercial suburbia carmen
Construcción y operación del centro comercial suburbia carmenConstrucción y operación del centro comercial suburbia carmen
Construcción y operación del centro comercial suburbia carmen
 
Presentación ympacto+
Presentación ympacto+Presentación ympacto+
Presentación ympacto+
 
La Persona Ante El Cosmos I
La Persona Ante El Cosmos ILa Persona Ante El Cosmos I
La Persona Ante El Cosmos I
 
El Mensajero Del Sol 70 1
El  Mensajero Del  Sol 70 1El  Mensajero Del  Sol 70 1
El Mensajero Del Sol 70 1
 
Reducing IT Complexity to Accelerate Digital Business
Reducing IT Complexity to Accelerate Digital BusinessReducing IT Complexity to Accelerate Digital Business
Reducing IT Complexity to Accelerate Digital Business
 
талалаївка рем
талалаївка ремталалаївка рем
талалаївка рем
 
Uno de los nuevos desafíos del programa escolar 2008 estadística
Uno de los nuevos desafíos del programa escolar 2008   estadísticaUno de los nuevos desafíos del programa escolar 2008   estadística
Uno de los nuevos desafíos del programa escolar 2008 estadística
 
About us
About usAbout us
About us
 
Practical Contract Law Understanding & Drafting Contracts for Non-Lawyers
Practical Contract Law Understanding & Drafting Contracts for Non-LawyersPractical Contract Law Understanding & Drafting Contracts for Non-Lawyers
Practical Contract Law Understanding & Drafting Contracts for Non-Lawyers
 
Historia del canton paute
Historia del canton pauteHistoria del canton paute
Historia del canton paute
 
Rotary Peace Centers 101
Rotary Peace Centers 101Rotary Peace Centers 101
Rotary Peace Centers 101
 
Comercio electrónico - Conceptos, Funcionalidad, Ejemplos
Comercio electrónico - Conceptos, Funcionalidad, EjemplosComercio electrónico - Conceptos, Funcionalidad, Ejemplos
Comercio electrónico - Conceptos, Funcionalidad, Ejemplos
 

Semelhante a Convierte web apps en desktop apps con Node-webkit

Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidadRaelyx Cordero
 
Docker orientado al desarrollo de aplicaciones con NodeJS
Docker orientado al desarrollo de aplicaciones con NodeJSDocker orientado al desarrollo de aplicaciones con NodeJS
Docker orientado al desarrollo de aplicaciones con NodeJSJan Sanchez
 
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]Keopx
 
Docker en el entorno de desarrollo
Docker en el entorno de desarrolloDocker en el entorno de desarrollo
Docker en el entorno de desarrolloAlejandro Hernández
 
Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2Ignacio Muñoz Vicente
 
Docker: la revolución en virtualización
Docker: la revolución en virtualizaciónDocker: la revolución en virtualización
Docker: la revolución en virtualizaciónMarcelo Ochoa
 
Gwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoGwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoManuel Carrasco Moñino
 
BEEVA | Introducción a Docker
BEEVA | Introducción a DockerBEEVA | Introducción a Docker
BEEVA | Introducción a DockerBEEVA_es
 
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilTópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilJosé Antonio Sandoval Acosta
 
De desarrollo a producción usando docker
De desarrollo a producción usando dockerDe desarrollo a producción usando docker
De desarrollo a producción usando dockerChristian Rodriguez
 

Semelhante a Convierte web apps en desktop apps con Node-webkit (20)

Introducción Nodejs
Introducción NodejsIntroducción Nodejs
Introducción Nodejs
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidad
 
TRABAJO.ppt
TRABAJO.pptTRABAJO.ppt
TRABAJO.ppt
 
Netbeans ide 7.2
Netbeans ide 7.2Netbeans ide 7.2
Netbeans ide 7.2
 
Apps Days Firefox OS
Apps Days Firefox OSApps Days Firefox OS
Apps Days Firefox OS
 
Docker orientado al desarrollo de aplicaciones con NodeJS
Docker orientado al desarrollo de aplicaciones con NodeJSDocker orientado al desarrollo de aplicaciones con NodeJS
Docker orientado al desarrollo de aplicaciones con NodeJS
 
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
 
Taller girona
Taller gironaTaller girona
Taller girona
 
Docker en el entorno de desarrollo
Docker en el entorno de desarrolloDocker en el entorno de desarrollo
Docker en el entorno de desarrollo
 
Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2
 
Docker: la revolución en virtualización
Docker: la revolución en virtualizaciónDocker: la revolución en virtualización
Docker: la revolución en virtualización
 
Ionic 2
Ionic 2 Ionic 2
Ionic 2
 
Gwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoGwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrasco
 
Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014
 
202204-Modernizando aplicaciones legacy
202204-Modernizando aplicaciones legacy202204-Modernizando aplicaciones legacy
202204-Modernizando aplicaciones legacy
 
BEEVA | Introducción a Docker
BEEVA | Introducción a DockerBEEVA | Introducción a Docker
BEEVA | Introducción a Docker
 
Introduccion android
Introduccion androidIntroduccion android
Introduccion android
 
Jug málaga docker 101 - final
Jug málaga   docker 101 - finalJug málaga   docker 101 - final
Jug málaga docker 101 - final
 
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilTópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
 
De desarrollo a producción usando docker
De desarrollo a producción usando dockerDe desarrollo a producción usando docker
De desarrollo a producción usando docker
 

Último

Instalacion de servicios windows, configuracion y aplicacion.
Instalacion de servicios windows, configuracion y aplicacion.Instalacion de servicios windows, configuracion y aplicacion.
Instalacion de servicios windows, configuracion y aplicacion.CZSOTEC
 
Delitos informáticos en Slideshare.pptx
Delitos informáticos en  Slideshare.pptxDelitos informáticos en  Slideshare.pptx
Delitos informáticos en Slideshare.pptxmaykolmagallanes012
 
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxMacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxcalzadillasluis134
 
Se realiza instalacion y configuraacion servicios Windows
Se realiza instalacion y configuraacion servicios WindowsSe realiza instalacion y configuraacion servicios Windows
Se realiza instalacion y configuraacion servicios WindowsCZSOTEC
 
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOSISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOELIAMARYTOVARFLOREZD
 
Webinar Resolucion2335 de 2023 Kubapp.pdf
Webinar Resolucion2335 de 2023 Kubapp.pdfWebinar Resolucion2335 de 2023 Kubapp.pdf
Webinar Resolucion2335 de 2023 Kubapp.pdfAnaRosaMontenegro
 
SQL server Analysis Services & SQL Server Reporting Services.pptx
SQL server Analysis Services & SQL Server Reporting Services.pptxSQL server Analysis Services & SQL Server Reporting Services.pptx
SQL server Analysis Services & SQL Server Reporting Services.pptxRAMIROANTONIOGALINDO
 

Último (7)

Instalacion de servicios windows, configuracion y aplicacion.
Instalacion de servicios windows, configuracion y aplicacion.Instalacion de servicios windows, configuracion y aplicacion.
Instalacion de servicios windows, configuracion y aplicacion.
 
Delitos informáticos en Slideshare.pptx
Delitos informáticos en  Slideshare.pptxDelitos informáticos en  Slideshare.pptx
Delitos informáticos en Slideshare.pptx
 
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxMacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
 
Se realiza instalacion y configuraacion servicios Windows
Se realiza instalacion y configuraacion servicios WindowsSe realiza instalacion y configuraacion servicios Windows
Se realiza instalacion y configuraacion servicios Windows
 
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOSISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
 
Webinar Resolucion2335 de 2023 Kubapp.pdf
Webinar Resolucion2335 de 2023 Kubapp.pdfWebinar Resolucion2335 de 2023 Kubapp.pdf
Webinar Resolucion2335 de 2023 Kubapp.pdf
 
SQL server Analysis Services & SQL Server Reporting Services.pptx
SQL server Analysis Services & SQL Server Reporting Services.pptxSQL server Analysis Services & SQL Server Reporting Services.pptx
SQL server Analysis Services & SQL Server Reporting Services.pptx
 

Convierte web apps en desktop apps con Node-webkit

  • 1. CONVERTIR WEB APP`S EN DESKTOP APP`S CON NODE-WEBKIT APP RUNTIME BASED ON CHROMIUM AND NODE.JS JOSE GRATEREAUX @JGRATEREAUX https://github.com/gratereaux
  • 3. ALGUNAS APPS TweetDeck Sputnik (RSS reader) Kindle Cloud Reader Weather-Map
  • 4. ALGUNAS APPS Popcorn Time LexiMail A wizard`s Lizard (Game) Sqwiggle
  • 5. ¿QUE ES NODE-WEBKIT? • Es un web app runtime
  • 6. ¿QUE ES NODE-WEBKIT? • Integra funciones de Node.js dentro del webkit
  • 7. ¿QUE ES NODE-WEBKIT? • Multiplataforma, Se puede ejecutar en OS X, Windows y Linux.
  • 8. ¿QUE ES NODE-WEBKIT? • Fácil distribución y empaquetamiento
  • 9. ¿QUE ES NODE-WEBKIT? • Puedes usar módulos de Node.js
  • 10. ¿QUE ES NODE-WEBKIT? • Basado en Chromium y Node.js. • Creado y desarrollado en Intel. • Open source y publicado a github en Diciembre 2011. • Soporta casi todas las características de HTML5. • Audio y video soportado. • Frameworks de juegos HTML5 como por ejemplo cocos2d trabajan perfecto en node-webkit. • Puedes instalar modulos de node.js usando el npm. • Mas info en : – https://github.com/rogerwang/node-webkit
  • 11. EJEMPLOS - CASOS DE USO • File explorer & file editor – Puedes usar el modulo de node filesistem (fs) o HTML5 file API – Puedes invocar dialogo de file select de javascript. – Soporte de Dragging de archivos – Demo de Node-webkit file explorer: • https://github.com/zcbenz/nw-file-explorer • Media applications – getUserMedia es soportado en node-webkit. – Camara y Audio recording es soportado (<video> y <audio> tags)
  • 12. • Estructura de una app CREANDO NUESTRO PROYECTO
  • 13. CREANDO NUESTRO PROYECTO Name: representa el nombre de directorio de configuracion del app. En Linux el app data sera guardado en ‘~/.config/nw-demo’, en Mac OS X en ‘~/Library/Application Support/nw- demo’. Window contiene la configuracion de la ventana. Donde puedes configurar ancho, alto, toolbar, posicion, etc… En Main se especifica la pagina inicial que cargará el app.
  • 14. CREANDO NUESTRO PROYECTO • Al finalizar los codigos solo debemos: – Empaquetarlo y ejecutarlo: • Comprimirlo en un Zip • Y ejecutarlo nw app.zip • Podemos crear un standalone package con un ejecutable – En linux: $ cat nw app.nw > app – En Windows: :/ copy /b nw.exe + app.nw nombre.exe – En Mac OS X: cp app.nw nw/Contents/Resources/
  • 15. Vamos a ver los códigos CREANDO NUESTRO PROYECTO

Notas do Editor

  1. Pop corn time
  2. Como su nombre indica (más o menos) es node.js corriendo sobre webkit… que dicho así no parece especialmente particular excepto porque resulta que el motor webkit va incluido dentro de tu aplicación. Node.js te proporciona un framework basado en javascript con el que desarrollar tu aplicación, y webkit te da el entorno “runtime” sobre el que ejecutarlo. En forma resumida: estás creando una página web sin tener que preocuparte de hacks para diferentes navegadores, ya que éste va dentro de tu app. El motor webkit que usarás está modificado para adaptarse al uso en aplicaciones de escritorio, donde muchas de las limitaciones de seguridad no son necesarias (no será un navegador de uso general a merced de ataques desde las webs por las que navegues) y por tanto tienes más libertad para acceder a recursos del sistema (como por ejemplo el sistema de ficheros). Además dado que dispones de versiones de node-webkit para distintas plataformas, el código que desarrolles en cualquiera de ellas será totalmente portable al resto.
  3. Name: representa el nombre de directorio de configuracion del app. En Linux el app data sera guardado en ‘~/.config/nw-demo’, en Mac OS X en ‘~/Library/Application Support/nw-demo’
  4. 1- bajamos el node-webkit y lo extraemos en una carpeta 2- creamos una carpeta del proyecto y coremos nmp init para crear el package.json 3- ponemos los datos 4- editamos el json, cambiamos el main por un html 5- agregamos la propiedad window en el json "window":{ "title": "Ejemplo de APP usando Node-webkit", "toolbar": true, "frame": true, "width": 850, "height": 500, "position": "center", "resizable": true, "icon": "sample.png" }, 6- creamos los archivos html y css segun el gusto 7- luego comprimimos a zip y cambiamos el nombre a "nombre" con extencion nw. 8 - luego cambio a false las propiedades de toolbar y frame para mostrar que se ocultan.
  5. https://github.com/zcbenz/nw-sample-apps