Enviar pesquisa
Carregar
Developing GNOME Apps in Javascript
•
1 gostou
•
1,577 visualizações
Felipe Borges
Seguir
Software
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 18
Baixar agora
Baixar para ler offline
Recomendados
Javascript in Linux Desktop
Javascript in Linux Desktop
Yuren Ju
Quick Review of Desktop and Native Apps using Javascript
Quick Review of Desktop and Native Apps using Javascript
Robert Ellen
Javascript in linux desktop (ICOS ver.)
Javascript in linux desktop (ICOS ver.)
Yuren Ju
welcome to gopherlabs - why go (golang)?
welcome to gopherlabs - why go (golang)?
sangam biradar
Git: Why And How to
Git: Why And How to
lanhuonga3
Introducing Yeoman 1.0 beta
Introducing Yeoman 1.0 beta
digitalzombie
Happy hacking with Plone
Happy hacking with Plone
Makina Corpus
Devenez le plus heureux des Front-end avec Gulp.js
Devenez le plus heureux des Front-end avec Gulp.js
Rémy Savard
Recomendados
Javascript in Linux Desktop
Javascript in Linux Desktop
Yuren Ju
Quick Review of Desktop and Native Apps using Javascript
Quick Review of Desktop and Native Apps using Javascript
Robert Ellen
Javascript in linux desktop (ICOS ver.)
Javascript in linux desktop (ICOS ver.)
Yuren Ju
welcome to gopherlabs - why go (golang)?
welcome to gopherlabs - why go (golang)?
sangam biradar
Git: Why And How to
Git: Why And How to
lanhuonga3
Introducing Yeoman 1.0 beta
Introducing Yeoman 1.0 beta
digitalzombie
Happy hacking with Plone
Happy hacking with Plone
Makina Corpus
Devenez le plus heureux des Front-end avec Gulp.js
Devenez le plus heureux des Front-end avec Gulp.js
Rémy Savard
Continuous Delivery - FIT VUT
Continuous Delivery - FIT VUT
Juraj Michálek
Flutter - Pixel by Pixel
Flutter - Pixel by Pixel
Thomas Gazzoni
Understanding how concurrency work in os
Understanding how concurrency work in os
GenchiLu1
Grok in Plone
Grok in Plone
jcbrand
Writing native Linux desktop apps with JavaScript
Writing native Linux desktop apps with JavaScript
Igalia
game project presentation
game project presentation
Kavi Kumar
GIT_GITHUB_2016_06_17
GIT_GITHUB_2016_06_17
siva ram
Latex with git
Latex with git
sppmg
用 Kotlin 打造讀書會小幫手
用 Kotlin 打造讀書會小幫手
Shengyou Fan
Why use JavaScript in Hardware? GoTo Conf - Berlin
Why use JavaScript in Hardware? GoTo Conf - Berlin
TechnicalMachine
Real-time, collaborative applications in Plone
Real-time, collaborative applications in Plone
jcbrand
Gopenflow demo v1 (english)
Gopenflow demo v1 (english)
Hiroaki Kawai
Rapid tests development
Rapid tests development
The Software House
New Technologies demoed at the 2011 Plone Conference
New Technologies demoed at the 2011 Plone Conference
jcbrand
Python_Session
Python_Session
siva ram
Python Django Basics
Python Django Basics
RahilMemon5
Mp24: Python in gaming industry
Mp24: Python in gaming industry
Montreal Python
Geb+spock: let your functional tests live long and prosper
Geb+spock: let your functional tests live long and prosper
Esther Lozano
MeteorJS - How to start
MeteorJS - How to start
Dan Tran
guadec-2015-developer-switch-dreams
guadec-2015-developer-switch-dreams
Christian Hergert
Building assets on the fly with Node.js
Building assets on the fly with Node.js
Acquisio
EY India Tax Insights
EY India Tax Insights
EY
Mais conteúdo relacionado
Mais procurados
Continuous Delivery - FIT VUT
Continuous Delivery - FIT VUT
Juraj Michálek
Flutter - Pixel by Pixel
Flutter - Pixel by Pixel
Thomas Gazzoni
Understanding how concurrency work in os
Understanding how concurrency work in os
GenchiLu1
Grok in Plone
Grok in Plone
jcbrand
Writing native Linux desktop apps with JavaScript
Writing native Linux desktop apps with JavaScript
Igalia
game project presentation
game project presentation
Kavi Kumar
GIT_GITHUB_2016_06_17
GIT_GITHUB_2016_06_17
siva ram
Latex with git
Latex with git
sppmg
用 Kotlin 打造讀書會小幫手
用 Kotlin 打造讀書會小幫手
Shengyou Fan
Why use JavaScript in Hardware? GoTo Conf - Berlin
Why use JavaScript in Hardware? GoTo Conf - Berlin
TechnicalMachine
Real-time, collaborative applications in Plone
Real-time, collaborative applications in Plone
jcbrand
Gopenflow demo v1 (english)
Gopenflow demo v1 (english)
Hiroaki Kawai
Rapid tests development
Rapid tests development
The Software House
New Technologies demoed at the 2011 Plone Conference
New Technologies demoed at the 2011 Plone Conference
jcbrand
Python_Session
Python_Session
siva ram
Python Django Basics
Python Django Basics
RahilMemon5
Mp24: Python in gaming industry
Mp24: Python in gaming industry
Montreal Python
Geb+spock: let your functional tests live long and prosper
Geb+spock: let your functional tests live long and prosper
Esther Lozano
MeteorJS - How to start
MeteorJS - How to start
Dan Tran
guadec-2015-developer-switch-dreams
guadec-2015-developer-switch-dreams
Christian Hergert
Mais procurados
(20)
Continuous Delivery - FIT VUT
Continuous Delivery - FIT VUT
Flutter - Pixel by Pixel
Flutter - Pixel by Pixel
Understanding how concurrency work in os
Understanding how concurrency work in os
Grok in Plone
Grok in Plone
Writing native Linux desktop apps with JavaScript
Writing native Linux desktop apps with JavaScript
game project presentation
game project presentation
GIT_GITHUB_2016_06_17
GIT_GITHUB_2016_06_17
Latex with git
Latex with git
用 Kotlin 打造讀書會小幫手
用 Kotlin 打造讀書會小幫手
Why use JavaScript in Hardware? GoTo Conf - Berlin
Why use JavaScript in Hardware? GoTo Conf - Berlin
Real-time, collaborative applications in Plone
Real-time, collaborative applications in Plone
Gopenflow demo v1 (english)
Gopenflow demo v1 (english)
Rapid tests development
Rapid tests development
New Technologies demoed at the 2011 Plone Conference
New Technologies demoed at the 2011 Plone Conference
Python_Session
Python_Session
Python Django Basics
Python Django Basics
Mp24: Python in gaming industry
Mp24: Python in gaming industry
Geb+spock: let your functional tests live long and prosper
Geb+spock: let your functional tests live long and prosper
MeteorJS - How to start
MeteorJS - How to start
guadec-2015-developer-switch-dreams
guadec-2015-developer-switch-dreams
Destaque
Building assets on the fly with Node.js
Building assets on the fly with Node.js
Acquisio
EY India Tax Insights
EY India Tax Insights
EY
Angular.js - JS Camp UKraine 2013
Angular.js - JS Camp UKraine 2013
Max Klymyshyn
Gtk development-using-glade-3
Gtk development-using-glade-3
caezsar
Planbox Backbone MVC
Planbox Backbone MVC
Acquisio
The Delight and Difficulties of Universal Java Script with React
The Delight and Difficulties of Universal Java Script with React
New Relic
Full-Stack JavaScript with Node.js
Full-Stack JavaScript with Node.js
Michael Lehmann
Isomorphic JavaScript – future of the web
Isomorphic JavaScript – future of the web
Sigma Software
An introduction to React.js
An introduction to React.js
Emanuele DelBono
Customer Segmentation Principles
Customer Segmentation Principles
Vladimir Dimitroff
React JS and why it's awesome
React JS and why it's awesome
Andrew Hull
Destaque
(11)
Building assets on the fly with Node.js
Building assets on the fly with Node.js
EY India Tax Insights
EY India Tax Insights
Angular.js - JS Camp UKraine 2013
Angular.js - JS Camp UKraine 2013
Gtk development-using-glade-3
Gtk development-using-glade-3
Planbox Backbone MVC
Planbox Backbone MVC
The Delight and Difficulties of Universal Java Script with React
The Delight and Difficulties of Universal Java Script with React
Full-Stack JavaScript with Node.js
Full-Stack JavaScript with Node.js
Isomorphic JavaScript – future of the web
Isomorphic JavaScript – future of the web
An introduction to React.js
An introduction to React.js
Customer Segmentation Principles
Customer Segmentation Principles
React JS and why it's awesome
React JS and why it's awesome
Semelhante a Developing GNOME Apps in Javascript
Gomobile: gophers in the land of Android
Gomobile: gophers in the land of Android
Jovica Popovic
Google GO
Google GO
Ajay Gahlot
Let's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming Language
Ganesh Samarthyam
Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language
Ganesh Samarthyam
Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)
Igalia
Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction
Ganesh Samarthyam
A First Look at Google's Go Programming Language
A First Look at Google's Go Programming Language
Ganesh Samarthyam
Golang introduction
Golang introduction
DineshDinesh131
Opensource Software usability
Opensource Software usability
Giacomo Antonino Fazio
G T K+ 101
G T K+ 101
Ahmed Saeed
Introduction to Go
Introduction to Go
Simon Hewitt
Golang : A Hype or the Future?
Golang : A Hype or the Future?
Mindfire LLC
Fundamentals of Golang
Fundamentals of Golang
Suvin Nimnaka
Android is going to Go! - Android and goland - Almog Baku
Android is going to Go! - Android and goland - Almog Baku
DroidConTLV
Android is going to Go! Android and Golang
Android is going to Go! Android and Golang
Almog Baku
A gentle intro to Golang and the Go-universe
A gentle intro to Golang and the Go-universe
Alex-P. Natsios
Dependency management in golang
Dependency management in golang
Ramit Surana
PhoneGap
PhoneGap
Emil Varga
Introduction to go lang
Introduction to go lang
Amal Mohan N
Go programing language
Go programing language
Ramakrishna kapa
Semelhante a Developing GNOME Apps in Javascript
(20)
Gomobile: gophers in the land of Android
Gomobile: gophers in the land of Android
Google GO
Google GO
Let's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language
Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)
Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction
A First Look at Google's Go Programming Language
A First Look at Google's Go Programming Language
Golang introduction
Golang introduction
Opensource Software usability
Opensource Software usability
G T K+ 101
G T K+ 101
Introduction to Go
Introduction to Go
Golang : A Hype or the Future?
Golang : A Hype or the Future?
Fundamentals of Golang
Fundamentals of Golang
Android is going to Go! - Android and goland - Almog Baku
Android is going to Go! - Android and goland - Almog Baku
Android is going to Go! Android and Golang
Android is going to Go! Android and Golang
A gentle intro to Golang and the Go-universe
A gentle intro to Golang and the Go-universe
Dependency management in golang
Dependency management in golang
PhoneGap
PhoneGap
Introduction to go lang
Introduction to go lang
Go programing language
Go programing language
Último
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
masabamasaba
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
masabamasaba
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
masabamasaba
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
masabamasaba
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
masabamasaba
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
Papp Krisztián
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
WSO2
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
WSO2
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
SelfMade bd
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
masabamasaba
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
masabamasaba
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
AnnaArtyushina1
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
masabamasaba
Último
(20)
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
Developing GNOME Apps in Javascript
1.
Developing GNOME Apps
in Javascript Felipe Borges <felipeborges@gnome.org>
2.
Why talk about
Gjs?
3.
GNOME is.... Desktop environment Development
platform
4.
GNOME Developer Platform
5.
Javascript is pretty
cool!
6.
It has bad
parts! Globals Unexpected behaviour No block scope
7.
But it also
has good parts! Closures are central Functions are first-class objects Prototypal inheritance Is everywhere!
8.
9.
Gjs First released in
2008 Well maintained Main development language for writing GNOME Apps
10.
GNOME Apps in
JS Documents Shell Polari
11.
gjs-console
12.
Get started Gjs and
Gtk Actions and signals Run your application
13.
const Lang =
imports.lang; const Gtk = imports.gi.Gtk; const App = new Lang.Class({ Name: 'App', Extends: Gtk.Application, _init: function () { this.parent({ application_id: 'org.example.App' }); this.connect('activate', Lang.bind(this, this._onActivate)); this.connect('startup', Lang.bind(this, this._onStartup)); },
14.
_onActivate: function ()
{ this._window.show_all(); }, _onStartup: function () { this._window = new Gtk.ApplicationWindow({ application: this, title: "Hello World!" }); this._window.set_default_size(200, 200); let label = new Gtk.Label({ label: "Hello World" }); this._window.add(label); } });
15.
Run your application let
app = new App(); app.run(ARGV); $ gjs helloWorld.js
16.
http://developer.gnome.org/
17.
Become a Friend
of GNOME Individual donation program Donations support the GNOME project http://gnome.org/friends
18.
Developing GNOME Apps
in Javascript Felipe Borges <felipeborges@gnome.org>
Baixar agora