Meu nome é Beto Muniz
betomuniz.com
Sou de Minas Gerais e atualmente trabalho na Questrade pela Augix Outsourcing
Slide 3
Slide 3 text
Ampliando suas fronteiras com node-webkit
Slide 4
Slide 4 text
Mas que é node-webkit?
Slide 5
Slide 5 text
node-webkit é um runtime que foi
desenvolvido pela Intel, mas que teve seu
código aberto em 2007 e é baseado na união do
Webkit com o NodeJS
github.com/rogerwang/node-webkit
Slide 6
Slide 6 text
Mas...como assim? Runtime? Webkit?
Slide 7
Slide 7 text
Isso basicamente é a integração de qualquer
funcionalidade do nodejs dentro do webkit,
que por sua vez é uma web browser engine de
código aberto.
Slide 8
Slide 8 text
Mas cara...isso ainda não foi muito claro...
Slide 9
Slide 9 text
Isso quer dizer que qualquer funcionalidade do de
ambas as tecnologias é oferecida para utilização,
possibilitando assim criação de Desktop WebApps
robustos, semelhante ao que acontece ao
desenvolver com Phonegap no mundo mobile.
Slide 10
Slide 10 text
Interessante...E o que esse runtime suporta?
Slide 11
Slide 11 text
#1 Módulos NodeJS Nativos
#2 Módulos NodeJS de Terceiros
#3 Bibliotecas e Frameworks Front-end
#4 Manipulação no DOM
#5 Praticamente todas as implementações atuais do HTML5
#6 Aceleração nativa de GPU
#7 Acesso a Video e Audio
#8 Plugins instalados no computador
Exemplo: Aplicativos que utilizam flash de alguma forma.
#9 Suporte a bases de dados para persistência
Web SQL Database, IndexedDB, PouchDB, EJDB, NeDB
Slide 12
Slide 12 text
Mas onde eu rodo/desenvolvo?
Slide 13
Slide 13 text
node-webkit possui uma toolkit CLI que
possibilita trabalhar em ambiente Windows,
Linux e MacOS sem muitos problemas.
Slide 14
Slide 14 text
Mas porque eu usaria?
Slide 15
Slide 15 text
#1 Fácil implementação
#2 Fácil aprendizado
#3 API para acesso a GUI do sistema
#4 Compila a aplicação para Windows, MacOS e Linux
#5 Inspect Element
#6 Desktop Notifications
#7 Escreva a aplicação uma vez*
Slide 16
Slide 16 text
E a lista toda de features não acabou...
Slide 17
Slide 17 text
#1 Frameless window
#2 Utiliza o NPM
#3 Documentação muito bem feita
#4 Kiosk mode
#5 Media APIs
#6 HTML5 Support
Drag & Drop, Data persistent, WebGL, WebRTC, CSS3, Web Storage, Application Cache, etc.
Estrutura mínima para uma aplicação com node-webkit
index.html
package.json
Slide 26
Slide 26 text
No content
Slide 27
Slide 27 text
index.html (main file)
O main file de sua aplicação é obrigatório, pois
será o primeiro arquivo que o runtime irá buscar
após interpretar seu package.json
Slide 28
Slide 28 text
package.json
Slide 29
Slide 29 text
Ferramentas
Slide 30
Slide 30 text
Slush Generator com node-webkit, Express e NeDB
slush-nodewebkit-express-nedb
npmjs.org/package/slush-nodewebkit-express-nedb
Slush Generator com node-webkit, Express e IndexedDB
slush-nodewebkit-indexeddb
npmjs.org/package/slush-nodewebkit-indexeddb
Slide 31
Slide 31 text
Referência
Slide 32
Slide 32 text
Wiki:
github.com/rogerwang/node-webkit/wiki
Slide 33
Slide 33 text
And now...
Slide 34
Slide 34 text
Repositório das Demonstrações:
github.com/obetomuniz/nw-demos
Slide 35
Slide 35 text
E isso é tudo pessoal...
betomuniz.com
@obetomuniz
github.com/obetomuniz
[email protected]
speakerdeck.com/obetomuniz