Un développeur propose de convertir les Chrome Apps vers Electron

Un développeur propose de convertir les Chrome Apps vers Electron

Quelques fonctions non disponibles pour l'instant

Avatar de l'auteur
Vincent Hermann

Publié dans

Internet

29/08/2016 2 minutes
31

Un développeur propose de convertir les Chrome Apps vers Electron

Un développeur propose un outil permettant aux développeurs de recompiler leurs applications conçues pour Chrome vers Electron. L’idée est bien entendu de simplifier le travail face à l’abandon des Chrome Apps annoncé par Google.

Début 2018, les Chrome Apps ne fonctionneront plus nulle part, le second semestre 2017 marquant déjà leur disparition des catalogues et coupant donc la possibilité d’en avoir de nouvelles. L’éditeur recommande de s’orienter vers les technologies du web, considérées dorénavant comme assez mures pour assurer la transition.

Convertir simplement une Chrome App vers Electron

Mais tout le monde n’est pas de cet avis. Koushik Dutta, à qui l’on doit déjà des outils comme Vysor et AllCast, propose désormais Electron Chrome. Pas besoin de se demander de quoi il s’agit, la réponse étant dans la question : l’outil « traduit » les applications Chrome en applications Electron, sans sacrifier les fonctionnalités, et surtout sans nécessité de réécriture lourde.

Electron est un framework créé par GitHub et sur lequel s’appuient des projets connus, notamment Atom (également de GitHub) et Visual Studio Code, l’environnement de développement gratuit et open source de Microsoft. Son objectif est de fournir aux développeurs un socle cohérent pour développer des applications complètes à partir du moteur Node.js.

L’idée de Koushik Dutta est donc simple. Plutôt que d’imposer aux développeurs de réécrire une grande partie de leurs applications, Electron Chrome permet de réduire ce travail à une « formalité », avec le bénéfice d’obtenir une application multiplateforme, ce qui est normalement le grand intérêt des Chrome Apps.

Un projet complété dans les prochains mois

Plusieurs points à souligner toutefois. Le plus important est qu’Electron Chrome n’est pas un outil officiel et qu’il n’y a aucune garantie de fonctionnement, et encore moins de support en cas de problème. En outre, la migration des applications peut rencontrer des erreurs, certaines API n’étant pas encore supportées. C’est particulièrement le cas pour File System et USB. Notez tout de même que le projet est open source (licence Apache 2.0), disponible sur GitHub et que son développeur a promis de le compléter.

31

Écrit par Vincent Hermann

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Convertir simplement une Chrome App vers Electron

Un projet complété dans les prochains mois

Commentaires (31)


Y’a possibilité de faire des widgets windows avec électron ?

Je rêve d’un widget Google keep.


bah ce type gagne de l’argent avec Vysor qu’il a rendu récemment payant. Pas étonnant qu’il défende son beefsteak…



Ca n’est pas la bonne voie. La décision de Google est la bonne.








kgersen a écrit :



 Ca n’est pas la bonne voie. La décision de Google est la bonne.





Je suis assez d’accord. Les techno du web sont la voie à suivre. D’ailleurs on devrait lutter pour la disparition même des application pour ne faire qu’avec des techno web, via navigateur et on serait compatible partout en une seule fois.



Pour infos : https://whatwebcando.today/ On avance petit à petit



Merci pour le site, intéressant. 

En tout cas on est encore loin d’avoir la qualité d’expérience du natif avec des webapp.  

Et tout ce qui est electron/phonegap etc. pour moi c’est pas vraiment du natif ;) Le vrai natif à mon sens c’est quand on fait appel au framework recommandé de l’OS hôte (cocoa, .net, …)








CNek a écrit :



Merci pour le site, intéressant. 

En tout cas on est encore loin d’avoir la qualité d’expérience du natif avec des webapp.  

Et tout ce qui est electron/phonegap etc. pour moi c’est pas vraiment du natif ;) Le vrai natif à mon sens c’est quand on fait appel au framework recommandé de l’OS hôte (cocoa, .net, …)





Je suis d’accord, pour l’heure on en est loin. Mais moins loin qu’il y a deux ans. 



C’est clair qu’on est loin. Après on n’est pas aidés non plus par JS qui aurait dû être remplacé par Typescript ou équivalent depuis longtemps… et les bugs de rendu des navigateurs…


On est loin pour les grosses apps complexes mais pour la plupart des “petites apps” mobiles ou desktop on y est déjà.



Les PWA (progressive web apps) sont en plein boom (demos: pwa.rocks ) et React Native permet de réutiliser du code JS/TS sur mobile. Google développe aussi Flutter.io (qui utilise Dart qui se transpile en JS) pour le mobile.



Tout le monde cherche a lutter contre le “trio infernal actuel”: Web (js/html5), Android (Java), iOS (Objective-c) qui requiert triple compétences (langages et api et tooling) ou triple teams pour développer sur les 3 plateformes du moment (si on oublie Windows qui est déjà mort sans le savoir). 



Il y a un gros match entre Facebook et Google a venir.



A noter aussi qu’Electron (Github) a un concurrent sérieux avec NW.JS (Intel).

Je ne suis pas sur que Github ait les reins solides pour Electron, a voir comment VSCode a pris le dessus sur Atom…Perso je ne miserai pas sur Electron mais plus sur NWJS.


sauf que la majorité des usages applicatifs se font en environnement business, sur des machines dont l’accès au net est, au minimum, filtré, pour ne pas dire bloqué.



donc pour la plupart des app de michu, ça marchera, mais en entreprise, ça ne verra jamais le jour…


Ne pas avoir accès au net n’empêche pas de faire des web apps .


Firefox OS avait raison trop tôt


Je pense que beaucoup ne comprennent pas ce que l’on peut faire aujourd’hui avec ces technos ^^“.



Je trouve le duo HTML/JS tellement puissant …








kgersen a écrit :



A noter aussi qu’Electron (Github) a un concurrent sérieux avec NW.JS (Intel).

Je ne suis pas sur que Github ait les reins solides pour Electron, a voir comment VSCode a pris le dessus sur Atom…Perso je ne miserai pas sur Electron mais plus sur NWJS.





Il me semblait justement que node webkit s’était fait enterrer par electron. Ils ont su remonter la barre?









Chiuchu a écrit :



sauf que la majorité des usages applicatifs se font en environnement business, sur des machines dont l’accès au net est, au minimum, filtré, pour ne pas dire bloqué.



donc pour la plupart des app de michu, ça marchera, mais en entreprise, ça ne verra jamais le jour…





au bureau, on utilise beaucoup les WebApp, comme Google Sheet, Google Docs, Google Keep, Google Agenda, Google Mail, pourtant l’accès au Web est filtré et très réduit.









kgersen a écrit :



On est loin pour les grosses apps complexes mais pour la plupart des “petites apps” mobiles ou desktop on y est déjà.



Les PWA (progressive web apps) sont en plein boom (demos: pwa.rocks ) et React Native permet de réutiliser du code JS/TS sur mobile. Google développe aussi Flutter.io (qui utilise Dart qui se transpile en JS) pour le mobile.



Tout le monde cherche a lutter contre le “trio infernal actuel”: Web (js/html5), Android (Java), iOS (Objective-c) qui requiert triple compétences (langages et api et tooling) ou triple teams pour développer sur les 3 plateformes du moment (si on oublie Windows qui est déjà mort sans le savoir). 



Il y a un gros match entre Facebook et Google a venir.



A noter aussi qu’Electron (Github) a un concurrent sérieux avec NW.JS (Intel).

Je ne suis pas sur que Github ait les reins solides pour Electron, a voir comment VSCode a pris le dessus sur Atom…Perso je ne miserai pas sur Electron mais plus sur NWJS.







Depuis quand VSCode a pris le dessus sur Atom? C’est une alternative viable qui s’est fait une certaine popularité mais c’est tout. J’ai pas de chiffres mais j’ai pas l’impression que tout le monde ait switché. En tout cas ce n’est pas mon cas ni particulièrement celui de mon entourage. Dans mon cas je vois pas trop l’intérêt de changer à part peut être si je faisait du TypeScript tout le temps.



Sinon perso je pense que Google a déjà perdu le “match”. Ça fait un moment que tout le monde s’en fou de Dart et je pense que c’est un peu la faute de Google qui finissent toujours par abandonner ce qu’ils commencent (d’ailleurs je ne connaissait pas Flutter mais je n’y toucherai pas, tout comme Dart et Angular).



Concernant NW.JS je sais pas mais comme mon VDD j’ai le sentiment qu’electron est bien plus populaire chez les devs. Mais de toute manière pour moi c’est assez anecdotique l’utilité de ce genre de technos quand je vois que la plupart de ceux qui s’en servent pour proposer des apps desktop ne font au final qu’un copier coller de leur site qui ne marche ni mieux ni moins bien. Bref c’est utile pour des vrais apps desktop comme Atom ou VSCode justement. Et que ce soit NW.JS ou Electron, sans avoir fouillé dans les détails, je pense qu’on peut faire la même chose avec l’un ou l’autre et si l’un disparaît ça sera très facilement portable.









boogieplayer a écrit :



Je suis assez d’accord. Les techno du web sont la voie à suivre. D’ailleurs on devrait lutter pour la disparition même des application pour ne faire qu’avec des techno web, via navigateur et on serait compatible partout en une seule fois.



Pour infos : https://whatwebcando.today/ On avance petit à petit





Ahaha non merci ! Je suis dev Front depuis maintenant plus de 3 ans, et ce à temps plein, donc autant te dire que je “commence” à bien maîtriser le sujet.



Et on n’y est pas du tout : en 3 ans j’ai dû changer environ 3 fois mon workflow à 100%, à cause des techniques qui bougent dans tous les sens, qui ne sont jamais les mêmes d’un jour sur l’autre.



Rien n’est industrialisé, on en est encore à lancer des tasks runner qui vont traduire du code d’un langage à un autre, l’inclusion de code dans un navigateur est encore complètement rudimentaire, faire des choses simples (une modal, un menu déroulant, …) demande encore un effort incroyable (par rapport à du développement natif), à cause d’un markup conçu à l’origine pour écrire des documents et non des applications. Encore heureux que Internet Explorer n’est plus vraiment un soucis aujourd’hui (du moins dans ma boîte).



Bref le web c’est cool, sinon je ne ferai pas ce boulot, mais en tant qu’utilisateur comme en tant que développeur, on est encore très loin de l’expérience du natif. Quand je vois la simplicité et la puissance des frameworks iOS et encore plus Android, je me dit que même avec de belles avancées on est encore très loin du même confort pour un développeur.









kgersen a écrit :



A noter aussi qu’Electron (Github) a un concurrent sérieux avec NW.JS (Intel).

Je ne suis pas sur que Github ait les reins solides pour Electron, a voir comment VSCode a pris le dessus sur Atom…Perso je ne miserai pas sur Electron mais plus sur NWJS.





Pas certain. Github est une boîte vraiment spéciale. Github.com est une incroyable machine à cash, par rapport à sa masse salariale, cette boîte dégage une fortune tous les mois, et beaucoup de monde chez eux bosse à temps plein sur des projets annexes à 100%, juste pour entretenir la marque Github dans le “coeur” des développeurs.



Édit : et je ne vois pas en quoi VSCode a pris le dessus sur Atom. Je ne connais personne l’utilisant sauf un ami Front qui bosse dans un environnement .NET.









Chiuchu a écrit :



sauf que la majorité des usages applicatifs se font en environnement business, sur des machines dont l’accès au net est, au minimum, filtré, pour ne pas dire bloqué.



donc pour la plupart des app de michu, ça marchera, mais en entreprise, ça ne verra jamais le jour…





Remarque judicieuse, conclusion hâtive. Les “ça n’arrivera jamais”, je m’en méfie toujours en matière NTIC.



@Vince a raison de surcroît, pour l’avoir fait pour un client, on peut tout à fait faire des web apps sans accès web.









Northernlights a écrit :



Y’a possibilité de faire des widgets windows avec électron ?

Je rêve d’un widget Google keep.





Ou comment bouffer 1Go de RAM et 25% de CPU pour un widget…









PèrePatience a écrit :



Je pense que beaucoup ne comprennent pas ce que l’on peut faire aujourd’hui avec ces technos ^^“.

Je trouve le duo HTML/JS tellement puissant …





C’est cool pour du draft mais à stabliser sur des exécutions dans la durée, c’est pas évident. Et on voit vite l’impact perf sur des machines limitées (exemple: les PC avec 2Go de RAM qui fleurissent partout et sont moins puissants que des PC d’il y a 7-8 ans).



Perso, j’ai rien contre la compilation JIT, les parties interprétées, mais Javascript est très difficilie à réellement maîtriser, HTML/CSS est extrêmement gourmand et n’ a pas le même rendu partout.



Bref, c’est des trucs pour marketeux: ça en jette, et puis ça se jette.









jpaul a écrit :



Ahaha non merci ! Je suis dev Front depuis maintenant plus de 3 ans, et ce à temps plein, donc autant te dire que je “commence” à bien maîtriser le sujet.



Et on n’y est pas du tout : en 3 ans j’ai dû changer environ 3 fois mon workflow à 100%, à cause des techniques qui bougent dans tous les sens, qui ne sont jamais les mêmes d’un jour sur l’autre.



… l’inclusion de code dans un navigateur est encore complètement rudimentaire, faire des choses simples (une modal, un menu déroulant, …) demande encore un effort incroyable (par rapport à du développement natif), à cause d’un markup conçu à l’origine pour écrire des documents et non des applications. Encore heureux que Internet Explorer n’est plus vraiment un soucis aujourd’hui (du moins dans ma boîte).



Bref le web c’est cool, sinon je ne ferai pas ce boulot, mais en tant qu’utilisateur comme en tant que développeur, on est encore très loin de l’expérience du natif. Quand je vois la simplicité et la puissance des frameworks iOS et encore plus Android, je me dit que même avec de belles avancées on est encore très loin du même confort pour un développeur.







C’est quoi l’ “inclusion du code dans un navigateur” ?  et les “Techniques qui bougent dans tous les sens”?

 



  



Que les webdevs qui veulent faire du desktop fassent un effort en apprenant les technos adéquates.



Mais qu’ils ne viennent pas pourrir la machine des utilisateurs (et des développeurs,  cf Atom) avec du Chromium dans tous les sens.



On est en train de gaspiller des ressources phénoménales à force de vouloir caser Html/Css/Js pour toute et n’importe quelle utilisation.








eax13 a écrit :



Mais qu’ils ne viennent pas pourrir la machine des utilisateurs (et des développeurs,  cf Atom) avec du Chromium dans tous les sens.



Et ne parlons pas des connections type TSE/Citrix, qui passent en mode image sur les navigateurs…









eax13 a écrit :



Que les webdevs qui veulent faire du desktop fassent un effort en apprenant les technos adéquates.



Mais qu’ils ne viennent pas pourrir la machine des utilisateurs (et des développeurs,  cf Atom) avec du Chromium dans tous les sens.



On est en train de gaspiller des ressources phénoménales à force de vouloir caser Html/Css/Js pour toute et n’importe quelle utilisation.





Atom fonctionne pas mal. Et Electron est un bonne solution pour certains usages.









v1nce a écrit :



les “Techniques qui bougent dans tous les sens”?





Pour avoir discuté avec un collègue front-end très orienté web, la philosophie de pensée de AngularJs entre sa version 1 et 2 n’est plus du tout la même par exemple.









eax13 a écrit :



Que les webdevs qui veulent faire du desktop fassent un effort en apprenant les technos adéquates.



Mais qu’ils ne viennent pas pourrir la machine des utilisateurs (et des développeurs,  cf Atom) avec du Chromium dans tous les sens.



On est en train de gaspiller des ressources phénoménales à force de vouloir caser Html/Css/Js pour toute et n’importe quelle utilisation.





Gardons des interfaces dégueulasses payées des fortunes et dont personne ne se sert ou dont personne n’a le budget pour, excellente idée ! JS Est le langage le plus utilisé au monde, s’en couper pour d’autres applications que le web est idiot.

(et les devs de webapps / node c’est pas les mêmes que jean-eude le dev php du dimanche qui pond du Jquery à plus savoir quoi en faire).









Mesc@lito a écrit :



Pour avoir discuté avec un collègue front-end très orienté web, la philosophie de pensée de AngularJs entre sa version 1 et 2 n’est plus du tout la même par exemple.





Généraliser les choix de l’équipe d’angular à l’ensemble des technos web, ça reste un bon gros raccourcis. Le soucis actuel est plus dans la difficulté à choisir quelque chose d’adapté à son projet étant donné le nombre de technos, plutôt que le soucis d’un changement d’API dans la librairie/framework/plateforme qu’on utilise.



Tu sais, il existe des outils fort acceptables pour le desktop, et je ne parle pas des ui dégueulasses à la Java. Par contre, il faut accepter d’apprendre autre chose que son langage préféré =/  Et encore, certaines technos mâchent le travail aux devs JS.

 

Un seul langage pour tout faire n’a jamais été une solution et se couper de JS pour autre chose que du web est la plus saine des décisions.


Enfin quand on voit la réactivité/fluidité des apps Electron, et surtout leur énorme conso en RAM, je me dit que le natif à encore de beau jour devant lui (en tout cas je l’espère)


J’aurai dû souligner le “par exemple”.

Je ne fais pas de développement web, uniquement du back-end donc je ne me permets pas de dire ou généraliser quoi que ce soit vu que je ne connais pas.

Je répondais simplement à la question de V1nce sans pour autant généraliser ou dire que c’est pareil pour tous les langages web.








dada051 a écrit :



Enfin quand on voit la réactivité/fluidité des apps Electron, et surtout leur énorme conso en RAM, je me dit que le natif à encore de beau jour devant lui (en tout cas je l’espère)





c’est bizarre, Java aussi ca bouffe plein de RAM et pourtant c’est encore pas mal présent sur des app desktop <img data-src=" />





(semi-<img data-src=" /> ?)









athlon64 a écrit :



c’est bizarre, Java aussi ca bouffe plein de RAM et pourtant c’est encore pas mal présent sur des app desktop <img data-src=" />





(semi-<img data-src=" /> ?)





Et c’est pas natif non plus <img data-src=" />