Scripts npm

Après avoir obtenu le dossier release produit par la tâche grunt release du chapitre précédent, nous pouvons exécuter des scripts npm pour aller encore plus loins dans les versions de production.

Electron

Electron permet de créer des applications multi-platformes pour le bureau à partir de Javascript, HTML et CSS.

Nous utilisons Electron pour permettre à nos utilisateurs d’avoir une version bureau de Cogeo.

Ce qui veut dire qu’à la fin de ce chapitre, vous pourrez utiliser Cogeo à la fois sur le Web et sur votre ordinateur.

Preview

Un premier script permet de testé en live la version qui sera livrée par Electron.

Cela permet de gagner du temps sur les test.

La commande npm start permet d’éxécuter ce script.

Note: si le dossier release n’est pas complet, le résultat produit sera complètement inutilisable.

Ce script va donc automatiquement transformer la version release en version de bureau.

La version de bureau va automatiquement s’ouvrir.

Note: la version produite est liée au système qui exécute le script (windows x64 pour ma part).

Production

Après avoir testé que la version preview fonctionne correctement, vous pouvez passer à la prochaine et dernière étape qui consiste à réaliser les versions de production pour toutes les plateformes.

La commande npm run package-all s’occupe de générer un dossier qui contiendra toutes les versions de production.

Ce script utilise electon-packager pour réaliser les multiples versions.

Note: le dossier de sortie s’intitule release-app et lui même contiendra des sous-dossiers nommés en fonction des version cogeo-app-[platform]-[arch]

Electron packager

C’est cette dépendance qui s’occupe de générer les versions.

Actuellement, le script en génère trois (Windows 32/64bits et Linux 32bits).

Il est tout à fait possible de modifier le script pour obtenir encore plus de versions.

Electron packager nous aide, mais nous sommes en charge de la configuration du script.