Saturday, April 23, 2016

New way of writing Desktop App: Electron




Mostly it boils down to these 

http://electron.atom.io/
https://bitbucket.org/chromiumembedded/cef
http://nwjs.io/

https://mobidev.biz/blog/cross-platform_development_for_desktops_choosing_the_right_technology



Electron:

https://nodejs.org/api/addons.html
https://www.npmjs.com/package/edge-atom-shell
https://medium.com/developers-writing/building-a-desktop-application-with-electron-204203eeb658



https://github.com/jiahaog/nativefier

http://electron.atom.io/community/#boilerplates
http://jlord.us/essential-electron/
http://blog.isleofcode.com/building-fully-functional-mac-pc-linux-apps-in-javascript-pt-2-native-addons-with-gyp-node-gyp-nan/#what
https://electron.atom.io/devtron/
https://electron.atom.io/spectron/
http://photonkit.com/getting-started/
https://gist.github.com/maximilian-ruppert/9de273f72c1ba4aa62d6


--Sample Apps
https://github.com/hokein/electron-sample-apps

Complex Apps Source Code
https://github.com/sindresorhus/awesome-electron
https://github.com/atom/atom
https://github.com/mapbox/mapbox-studio-classic
https://github.com/Microsoft/vscode



https://wiredcraft.com/blog/high-security-electron-js-application/








How Brackets was Built

    https://github.com/adobe/brackets



Pro

  1. Browser blocking local host communication
  2. Single Browser , no ie, firefox ,edge, safari.
  3. single version of browser to worry about.
  4. No browser plugins interfering with the site ,(ad block etc)
  5. Performance issue associated with multiple tabs
  6. Reduce layout issues 
  7. Multiple tabs and User losing focus
  8. Ability to do offline
  9. Faster
  10. Ability to control the URL in app
  11. Better control of UX experience


Cons
  1. disjointed experience between app and browser
  2. Navigation from facebook share and to the app
  3. Share project to other site

Cons
  1. Wraping up the flash plugin.
  2. PDF links