SlideShare una empresa de Scribd logo
1 de 12
Descargar para leer sin conexión
Quick Review of
'Desktop' / 'Native' Applications with Javascript
Agenda

   Why? Why Not?
   GLUEScript (http://gluescript.sourceforge.net)
   Seed (http://live.gnome.org/Seed)
   GJS (http://live.gnome.org/Gjs)
   Qt Script (http://doc.qt.nokia.com/latest/qtscript.html)
   QtQuick (http://qt.nokia.com/qtquick/)
   Topcube (https://github.com/creationix/topcube)
   Phones
   Summary
Why Desktop / Native in JS?

Javascript is...
...a fair choice as a language for building a UI
...embeddable in other languages, esp. C++
...also in your web-apps (code reuse???)


I am in search of something 'better' than web-
apps in certain problem domains
Why Not?

   Limited API ?
   Code reuse could be difficult
   Slow ?
   Package Hell ! :(
   ???
GLUEScript
   G)lueing L)ibraries U)sing E)cma-Script
   http://gluescript.sourceforge.net
   SpiderMonkey + POCO (C++) + wxWidgets
   Windows / C++ focused
   Building on Linux hard – I couldn't get there
   Mac ?
   Not worth it yet – could be great when they get to
    apt-get install gluescript
Seed

   Javascript for GTK Apps using WebKit's JS core
   http://live.gnome.org/Seed
   GObjectIntrospection to bridge into GNOME
   Brittle on my machine – Seg-Faults, missing or
    incompatible dependencies (probably Gtk)
   Demo
GJS

   Javascript for GTK using Spidermonkey
   http://live.gnome.org/Gjs
   GObjectIntrospection to bridge into GNOME
   Similar issues to Seed
   Demo
Qt Script

   Scripting Engine for Nokia's Qt framework
   http://doc.qt.nokia.com/latest/qtscript.html
   Typical scripting access to native Qt objects
   WebKit's JavascriptCore
Qt Quick

   Q)t UI C)reation K)it
   http://qt.nokia.com/qtquick/
   QML – a JS- / CSS- like language
   Desktop and 'Web' devices
   Access to the Qt Framework
   Can call JS files
   No Qt widgets???
   Demo
Top Cube

   Node.js binding to WebKitGtk
   https://github.com/creationix/topcube
   Use HTML5 / CSS3 to build a GUI for Node apps
   Demo
For Phone Apps

   IOS:
       Nimblekit (http://nimblekit.com) et al.
   Cross-platform
       Titanium (http://appcelerator.com)
Summary

   The GTK tools seem clunky and broken
   Qt options need more investigation
   Node.js with a GUI – might be cool
   Stick with C++, Python etc bindings for desktop
   Use Java, C++, Objective-C or HTML5 for Phones
   The search continues...

Más contenido relacionado

La actualidad más candente

Fixing Gaps. Strengthening the Chromium platform for content blocking
Fixing Gaps. Strengthening the Chromium platform for content blockingFixing Gaps. Strengthening the Chromium platform for content blocking
Fixing Gaps. Strengthening the Chromium platform for content blockingIgalia
 
Embedding Chromium into AGL demo platform with WAM
Embedding Chromium into AGL demo platform with WAMEmbedding Chromium into AGL demo platform with WAM
Embedding Chromium into AGL demo platform with WAMIgalia
 
Chromium Ozone
Chromium OzoneChromium Ozone
Chromium OzoneIgalia
 
QML demo for makerpro (1)
QML demo for makerpro (1)QML demo for makerpro (1)
QML demo for makerpro (1)diro fan
 
JS digest. February 2017
JS digest. February 2017JS digest. February 2017
JS digest. February 2017ElifTech
 
AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!Zander Mackie
 
Dockerfile for rust project
Dockerfile for rust projectDockerfile for rust project
Dockerfile for rust projectHien Nguyen
 
HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)
HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)
HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)Igalia
 
By VISY - ""In the country of the blind, the one-eyed man is king""
By VISY - ""In the country of the blind, the one-eyed man is king""By VISY - ""In the country of the blind, the one-eyed man is king""
By VISY - ""In the country of the blind, the one-eyed man is king""Tobias Leingruber
 
Geb+spock: let your functional tests live long and prosper
Geb+spock: let your functional tests live long and prosperGeb+spock: let your functional tests live long and prosper
Geb+spock: let your functional tests live long and prosperEsther Lozano
 
JS digest. January 2017
JS digest. January 2017JS digest. January 2017
JS digest. January 2017ElifTech
 
GWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO ToolsGWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO Toolsbarciszewski
 
Dsl로 만나는 groovy
Dsl로 만나는 groovyDsl로 만나는 groovy
Dsl로 만나는 groovySeeyoung Chang
 
Essential parts to implement own Ozone backend
Essential parts to implement own Ozone backendEssential parts to implement own Ozone backend
Essential parts to implement own Ozone backendIgalia
 
Spring-batch Groovy y Gradle
Spring-batch Groovy y GradleSpring-batch Groovy y Gradle
Spring-batch Groovy y GradleAntonio Mas
 
Taking containers from development to production
Taking containers from development to productionTaking containers from development to production
Taking containers from development to productionSuraj Deshmukh
 
From Python to smartphones: neural nets @ Saint-Gobain, François Sausset
From Python to smartphones: neural nets @ Saint-Gobain, François SaussetFrom Python to smartphones: neural nets @ Saint-Gobain, François Sausset
From Python to smartphones: neural nets @ Saint-Gobain, François SaussetPôle Systematic Paris-Region
 
Kiosk-mode browser using Chromium Embedded Framework (CEF)
Kiosk-mode browser using Chromium Embedded Framework (CEF)Kiosk-mode browser using Chromium Embedded Framework (CEF)
Kiosk-mode browser using Chromium Embedded Framework (CEF)Igalia
 

La actualidad más candente (20)

Fixing Gaps. Strengthening the Chromium platform for content blocking
Fixing Gaps. Strengthening the Chromium platform for content blockingFixing Gaps. Strengthening the Chromium platform for content blocking
Fixing Gaps. Strengthening the Chromium platform for content blocking
 
Embedding Chromium into AGL demo platform with WAM
Embedding Chromium into AGL demo platform with WAMEmbedding Chromium into AGL demo platform with WAM
Embedding Chromium into AGL demo platform with WAM
 
Chromium Ozone
Chromium OzoneChromium Ozone
Chromium Ozone
 
QML demo for makerpro (1)
QML demo for makerpro (1)QML demo for makerpro (1)
QML demo for makerpro (1)
 
JS digest. February 2017
JS digest. February 2017JS digest. February 2017
JS digest. February 2017
 
Groovy android
Groovy androidGroovy android
Groovy android
 
Jedi knight
Jedi knightJedi knight
Jedi knight
 
AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!AllTheTalks 2020: Buildpacks - container for everyone!
AllTheTalks 2020: Buildpacks - container for everyone!
 
Dockerfile for rust project
Dockerfile for rust projectDockerfile for rust project
Dockerfile for rust project
 
HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)
HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)
HTML5 on the AGL demo platform with Chromium and WAM (AGL AMM March 2021)
 
By VISY - ""In the country of the blind, the one-eyed man is king""
By VISY - ""In the country of the blind, the one-eyed man is king""By VISY - ""In the country of the blind, the one-eyed man is king""
By VISY - ""In the country of the blind, the one-eyed man is king""
 
Geb+spock: let your functional tests live long and prosper
Geb+spock: let your functional tests live long and prosperGeb+spock: let your functional tests live long and prosper
Geb+spock: let your functional tests live long and prosper
 
JS digest. January 2017
JS digest. January 2017JS digest. January 2017
JS digest. January 2017
 
GWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO ToolsGWT - Building Rich Internet Applications Using OO Tools
GWT - Building Rich Internet Applications Using OO Tools
 
Dsl로 만나는 groovy
Dsl로 만나는 groovyDsl로 만나는 groovy
Dsl로 만나는 groovy
 
Essential parts to implement own Ozone backend
Essential parts to implement own Ozone backendEssential parts to implement own Ozone backend
Essential parts to implement own Ozone backend
 
Spring-batch Groovy y Gradle
Spring-batch Groovy y GradleSpring-batch Groovy y Gradle
Spring-batch Groovy y Gradle
 
Taking containers from development to production
Taking containers from development to productionTaking containers from development to production
Taking containers from development to production
 
From Python to smartphones: neural nets @ Saint-Gobain, François Sausset
From Python to smartphones: neural nets @ Saint-Gobain, François SaussetFrom Python to smartphones: neural nets @ Saint-Gobain, François Sausset
From Python to smartphones: neural nets @ Saint-Gobain, François Sausset
 
Kiosk-mode browser using Chromium Embedded Framework (CEF)
Kiosk-mode browser using Chromium Embedded Framework (CEF)Kiosk-mode browser using Chromium Embedded Framework (CEF)
Kiosk-mode browser using Chromium Embedded Framework (CEF)
 

Destacado

Electron - Build cross platform desktop apps
Electron - Build cross platform desktop appsElectron - Build cross platform desktop apps
Electron - Build cross platform desktop appsPriyaranjan Mohanty
 
azdor.gov Forms 140a(nr)f
azdor.gov Forms 140a(nr)fazdor.gov Forms 140a(nr)f
azdor.gov Forms 140a(nr)ftaxman taxman
 
IV.LOS GRANDES CAMBIOS: PERSONAJES
IV.LOS GRANDES CAMBIOS: PERSONAJESIV.LOS GRANDES CAMBIOS: PERSONAJES
IV.LOS GRANDES CAMBIOS: PERSONAJESreligioniesaguadulce
 
Wingate Learner Analysis
Wingate Learner AnalysisWingate Learner Analysis
Wingate Learner AnalysisNicole Wingate
 
Quirky productswithintro
Quirky productswithintroQuirky productswithintro
Quirky productswithintrojoergenpleijte
 
Ute del proceso de construcción del plan nacinal para el buen vivir
Ute del proceso de construcción del plan nacinal para el buen vivirUte del proceso de construcción del plan nacinal para el buen vivir
Ute del proceso de construcción del plan nacinal para el buen vivirmarianelamm
 
Proyecto profundiza francisco_julio_christian.odt
Proyecto profundiza francisco_julio_christian.odtProyecto profundiza francisco_julio_christian.odt
Proyecto profundiza francisco_julio_christian.odtJuan Manuel Garrán Barea
 
Rio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa Nacional
Rio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa NacionalRio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa Nacional
Rio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa NacionalRio Info
 
Ex met junio2004 ppl
Ex met junio2004 pplEx met junio2004 ppl
Ex met junio2004 pplESTEL ,asn
 
Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...
Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...
Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...ec2e2n
 
Guía 1 introducción a las tecnologías de la información y la comunicación
Guía 1 introducción a las tecnologías de la información y la comunicación Guía 1 introducción a las tecnologías de la información y la comunicación
Guía 1 introducción a las tecnologías de la información y la comunicación maestriaeducativa
 
Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...
Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...
Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...bloqosfer
 
Azure blob cloud drive
Azure blob cloud driveAzure blob cloud drive
Azure blob cloud driveArai Ran
 
XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013
XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013
XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013Municipio de Titiribí-Antioquia
 
Korea Economic Daily - May 2013
Korea Economic Daily - May 2013Korea Economic Daily - May 2013
Korea Economic Daily - May 2013Niklas K Amundsson
 
[Curs] PR pentru ONG-uri
[Curs] PR pentru ONG-uri[Curs] PR pentru ONG-uri
[Curs] PR pentru ONG-uriDenisa Tudor
 
Quiet On The Set
Quiet On The SetQuiet On The Set
Quiet On The SetTheBradZ
 

Destacado (20)

Electron - Build cross platform desktop apps
Electron - Build cross platform desktop appsElectron - Build cross platform desktop apps
Electron - Build cross platform desktop apps
 
azdor.gov Forms 140a(nr)f
azdor.gov Forms 140a(nr)fazdor.gov Forms 140a(nr)f
azdor.gov Forms 140a(nr)f
 
IV.LOS GRANDES CAMBIOS: PERSONAJES
IV.LOS GRANDES CAMBIOS: PERSONAJESIV.LOS GRANDES CAMBIOS: PERSONAJES
IV.LOS GRANDES CAMBIOS: PERSONAJES
 
Wingate Learner Analysis
Wingate Learner AnalysisWingate Learner Analysis
Wingate Learner Analysis
 
Quirky productswithintro
Quirky productswithintroQuirky productswithintro
Quirky productswithintro
 
Ute del proceso de construcción del plan nacinal para el buen vivir
Ute del proceso de construcción del plan nacinal para el buen vivirUte del proceso de construcción del plan nacinal para el buen vivir
Ute del proceso de construcción del plan nacinal para el buen vivir
 
Vol24ju
Vol24juVol24ju
Vol24ju
 
Proyecto profundiza francisco_julio_christian.odt
Proyecto profundiza francisco_julio_christian.odtProyecto profundiza francisco_julio_christian.odt
Proyecto profundiza francisco_julio_christian.odt
 
Rio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa Nacional
Rio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa NacionalRio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa Nacional
Rio Info 2010 - Fórum de Negócios - Mercado de Petróleo - Mesa Nacional
 
Ex met junio2004 ppl
Ex met junio2004 pplEx met junio2004 ppl
Ex met junio2004 ppl
 
Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...
Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...
Monika Guzik Odbiorca - Uczniowie szkoły podstawowej "Chemia nie tylko w prob...
 
Guía 1 introducción a las tecnologías de la información y la comunicación
Guía 1 introducción a las tecnologías de la información y la comunicación Guía 1 introducción a las tecnologías de la información y la comunicación
Guía 1 introducción a las tecnologías de la información y la comunicación
 
Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...
Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...
Azərbaycan seqmentinə qısa baxış, Anar Əliyev, Elvin Hacı, Samur İsmayılov- f...
 
Azure blob cloud drive
Azure blob cloud driveAzure blob cloud drive
Azure blob cloud drive
 
XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013
XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013
XXIII SEMANA CULTURAL Y DEPORTIVA EN TITIRIBI-ANTIOQUIA 2013
 
Korea Economic Daily - May 2013
Korea Economic Daily - May 2013Korea Economic Daily - May 2013
Korea Economic Daily - May 2013
 
[Curs] PR pentru ONG-uri
[Curs] PR pentru ONG-uri[Curs] PR pentru ONG-uri
[Curs] PR pentru ONG-uri
 
Quiet On The Set
Quiet On The SetQuiet On The Set
Quiet On The Set
 
Trabajos TéMpera SíVori
Trabajos TéMpera SíVoriTrabajos TéMpera SíVori
Trabajos TéMpera SíVori
 
Xanthi
XanthiXanthi
Xanthi
 

Similar a Quick Review of Desktop and Native Apps using Javascript

Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)Igalia
 
Javascript in linux desktop (ICOS ver.)
Javascript in linux desktop (ICOS ver.)Javascript in linux desktop (ICOS ver.)
Javascript in linux desktop (ICOS ver.)Yuren Ju
 
DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.JooinK
 
DIY- computer vision with GWT
DIY- computer vision with GWTDIY- computer vision with GWT
DIY- computer vision with GWTFrancesca Tosi
 
Qt Tutorial - Part 1
Qt Tutorial - Part 1Qt Tutorial - Part 1
Qt Tutorial - Part 1rmitc
 
C language in our world 2019
C language in our world 2019C language in our world 2019
C language in our world 2019Juraj Michálek
 
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13Fred Sauer
 
Developing and Benchmarking Qt applications on Hawkboard with Xgxperf
Developing and Benchmarking Qt applications on Hawkboard with XgxperfDeveloping and Benchmarking Qt applications on Hawkboard with Xgxperf
Developing and Benchmarking Qt applications on Hawkboard with XgxperfPrabindh Sundareson
 
Why use JavaScript in Hardware? GoTo Conf - Berlin
Why use JavaScript in Hardware? GoTo Conf - Berlin Why use JavaScript in Hardware? GoTo Conf - Berlin
Why use JavaScript in Hardware? GoTo Conf - Berlin TechnicalMachine
 
GWT - AppDays - (25 aprile 2014, pordenone)
GWT - AppDays - (25 aprile 2014, pordenone)GWT - AppDays - (25 aprile 2014, pordenone)
GWT - AppDays - (25 aprile 2014, pordenone)firenze-gtug
 
PyQt Application Development On Maemo
PyQt Application Development On MaemoPyQt Application Development On Maemo
PyQt Application Development On Maemoachipa
 
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009Nokia
 
Add the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKitAdd the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKitIgalia
 
Architecting Qt Mobile Applications: Frameworks, Code Generators and Beyond
Architecting Qt Mobile Applications: Frameworks, Code Generators and BeyondArchitecting Qt Mobile Applications: Frameworks, Code Generators and Beyond
Architecting Qt Mobile Applications: Frameworks, Code Generators and BeyondSandro Andrade
 
Introduction to Google Web Toolkit
Introduction to Google Web ToolkitIntroduction to Google Web Toolkit
Introduction to Google Web ToolkitDidier Girard
 
Flutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textFlutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textToma Velev
 
Google flutter the easy and practical way
Google flutter the easy and practical wayGoogle flutter the easy and practical way
Google flutter the easy and practical wayAhmed Abu Eldahab
 
Choosing an Application framework for Mobile Linux Device
Choosing an Application framework for Mobile Linux DeviceChoosing an Application framework for Mobile Linux Device
Choosing an Application framework for Mobile Linux Devicesshreyas
 

Similar a Quick Review of Desktop and Native Apps using Javascript (20)

Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)
 
Javascript in linux desktop (ICOS ver.)
Javascript in linux desktop (ICOS ver.)Javascript in linux desktop (ICOS ver.)
Javascript in linux desktop (ICOS ver.)
 
DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.DIY: Computer Vision with GWT.
DIY: Computer Vision with GWT.
 
DIY- computer vision with GWT
DIY- computer vision with GWTDIY- computer vision with GWT
DIY- computer vision with GWT
 
Qt Tutorial - Part 1
Qt Tutorial - Part 1Qt Tutorial - Part 1
Qt Tutorial - Part 1
 
C language in our world 2019
C language in our world 2019C language in our world 2019
C language in our world 2019
 
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
 
Developing and Benchmarking Qt applications on Hawkboard with Xgxperf
Developing and Benchmarking Qt applications on Hawkboard with XgxperfDeveloping and Benchmarking Qt applications on Hawkboard with Xgxperf
Developing and Benchmarking Qt applications on Hawkboard with Xgxperf
 
Why use JavaScript in Hardware? GoTo Conf - Berlin
Why use JavaScript in Hardware? GoTo Conf - Berlin Why use JavaScript in Hardware? GoTo Conf - Berlin
Why use JavaScript in Hardware? GoTo Conf - Berlin
 
GWT - AppDays - (25 aprile 2014, pordenone)
GWT - AppDays - (25 aprile 2014, pordenone)GWT - AppDays - (25 aprile 2014, pordenone)
GWT - AppDays - (25 aprile 2014, pordenone)
 
PyQt Application Development On Maemo
PyQt Application Development On MaemoPyQt Application Development On Maemo
PyQt Application Development On Maemo
 
The WebKit project
The WebKit projectThe WebKit project
The WebKit project
 
Guides To Analyzing WebKit Performance
Guides To Analyzing WebKit PerformanceGuides To Analyzing WebKit Performance
Guides To Analyzing WebKit Performance
 
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
 
Add the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKitAdd the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKit
 
Architecting Qt Mobile Applications: Frameworks, Code Generators and Beyond
Architecting Qt Mobile Applications: Frameworks, Code Generators and BeyondArchitecting Qt Mobile Applications: Frameworks, Code Generators and Beyond
Architecting Qt Mobile Applications: Frameworks, Code Generators and Beyond
 
Introduction to Google Web Toolkit
Introduction to Google Web ToolkitIntroduction to Google Web Toolkit
Introduction to Google Web Toolkit
 
Flutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textFlutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - text
 
Google flutter the easy and practical way
Google flutter the easy and practical wayGoogle flutter the easy and practical way
Google flutter the easy and practical way
 
Choosing an Application framework for Mobile Linux Device
Choosing an Application framework for Mobile Linux DeviceChoosing an Application framework for Mobile Linux Device
Choosing an Application framework for Mobile Linux Device
 

Último

Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime PondicherryPondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherrymeghakumariji156
 
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789CristineGraceAcuyan
 
Gamestore case study UI UX by Amgad Ibrahim
Gamestore case study UI UX by Amgad IbrahimGamestore case study UI UX by Amgad Ibrahim
Gamestore case study UI UX by Amgad Ibrahimamgadibrahim92
 
How to Create a Productive Workspace Trends and Tips.pdf
How to Create a Productive Workspace Trends and Tips.pdfHow to Create a Productive Workspace Trends and Tips.pdf
How to Create a Productive Workspace Trends and Tips.pdfOffice Furniture Plus - Irving
 
Eye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docxEye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docxMdBokhtiyarHossainNi
 
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...gajnagarg
 
High Profile Escorts Nerul WhatsApp +91-9930687706, Best Service
High Profile Escorts Nerul WhatsApp +91-9930687706, Best ServiceHigh Profile Escorts Nerul WhatsApp +91-9930687706, Best Service
High Profile Escorts Nerul WhatsApp +91-9930687706, Best Servicemeghakumariji156
 
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEKLANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEKMarekMitek1
 
Essential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideEssential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideDesign Studio UI UX
 
怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证
怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证
怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证eeanqy
 
Lecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptxLecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptxShoaibRajper1
 
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证eeanqy
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Nitya salvi
 
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best ServiceIndependent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Servicemeghakumariji156
 
ab-initio-training basics and architecture
ab-initio-training basics and architectureab-initio-training basics and architecture
ab-initio-training basics and architecturesaipriyacoool
 
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableNitya salvi
 
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...Nitya salvi
 
Q4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentationQ4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentationZenSeloveres
 
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证eeanqy
 

Último (20)

Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime PondicherryPondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
 
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
 
Gamestore case study UI UX by Amgad Ibrahim
Gamestore case study UI UX by Amgad IbrahimGamestore case study UI UX by Amgad Ibrahim
Gamestore case study UI UX by Amgad Ibrahim
 
How to Create a Productive Workspace Trends and Tips.pdf
How to Create a Productive Workspace Trends and Tips.pdfHow to Create a Productive Workspace Trends and Tips.pdf
How to Create a Productive Workspace Trends and Tips.pdf
 
Eye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docxEye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docx
 
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
 
High Profile Escorts Nerul WhatsApp +91-9930687706, Best Service
High Profile Escorts Nerul WhatsApp +91-9930687706, Best ServiceHigh Profile Escorts Nerul WhatsApp +91-9930687706, Best Service
High Profile Escorts Nerul WhatsApp +91-9930687706, Best Service
 
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEKLANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
 
Essential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideEssential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive Guide
 
怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证
怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证
怎样办理伯明翰城市大学毕业证(BCU毕业证书)成绩单留信认证
 
Lecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptxLecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptx
 
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
 
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best ServiceIndependent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
 
ab-initio-training basics and architecture
ab-initio-training basics and architectureab-initio-training basics and architecture
ab-initio-training basics and architecture
 
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
 
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
 
Q4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentationQ4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentation
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
 
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
 

Quick Review of Desktop and Native Apps using Javascript

  • 1. Quick Review of 'Desktop' / 'Native' Applications with Javascript
  • 2. Agenda  Why? Why Not?  GLUEScript (http://gluescript.sourceforge.net)  Seed (http://live.gnome.org/Seed)  GJS (http://live.gnome.org/Gjs)  Qt Script (http://doc.qt.nokia.com/latest/qtscript.html)  QtQuick (http://qt.nokia.com/qtquick/)  Topcube (https://github.com/creationix/topcube)  Phones  Summary
  • 3. Why Desktop / Native in JS? Javascript is... ...a fair choice as a language for building a UI ...embeddable in other languages, esp. C++ ...also in your web-apps (code reuse???) I am in search of something 'better' than web- apps in certain problem domains
  • 4. Why Not?  Limited API ?  Code reuse could be difficult  Slow ?  Package Hell ! :(  ???
  • 5. GLUEScript  G)lueing L)ibraries U)sing E)cma-Script  http://gluescript.sourceforge.net  SpiderMonkey + POCO (C++) + wxWidgets  Windows / C++ focused  Building on Linux hard – I couldn't get there  Mac ?  Not worth it yet – could be great when they get to apt-get install gluescript
  • 6. Seed  Javascript for GTK Apps using WebKit's JS core  http://live.gnome.org/Seed  GObjectIntrospection to bridge into GNOME  Brittle on my machine – Seg-Faults, missing or incompatible dependencies (probably Gtk)  Demo
  • 7. GJS  Javascript for GTK using Spidermonkey  http://live.gnome.org/Gjs  GObjectIntrospection to bridge into GNOME  Similar issues to Seed  Demo
  • 8. Qt Script  Scripting Engine for Nokia's Qt framework  http://doc.qt.nokia.com/latest/qtscript.html  Typical scripting access to native Qt objects  WebKit's JavascriptCore
  • 9. Qt Quick  Q)t UI C)reation K)it  http://qt.nokia.com/qtquick/  QML – a JS- / CSS- like language  Desktop and 'Web' devices  Access to the Qt Framework  Can call JS files  No Qt widgets???  Demo
  • 10. Top Cube  Node.js binding to WebKitGtk  https://github.com/creationix/topcube  Use HTML5 / CSS3 to build a GUI for Node apps  Demo
  • 11. For Phone Apps  IOS:  Nimblekit (http://nimblekit.com) et al.  Cross-platform  Titanium (http://appcelerator.com)
  • 12. Summary  The GTK tools seem clunky and broken  Qt options need more investigation  Node.js with a GUI – might be cool  Stick with C++, Python etc bindings for desktop  Use Java, C++, Objective-C or HTML5 for Phones  The search continues...