Baptisé Quark, le nouvel outil open source promet de faciliter la création d’apps desktop avec des capacités natives tout en tirant parti des technologies de développement Web. Basé sur le framework Electron de GitHub pour les applications de bureau multiplateformes, Quark est un outil à usage généraliste qui utilise JavaScript, CSS et HTML. Quark est actuellement en phase beta, mais une version de production pourrait être prête pour le mois prochain. L’outil utilise le runtime JavaScript d'Electron pour créer des fonctionnalités de type « natives ». Le projet inclut également l'environnement de développement Quark, un IDE qui délivre un seul fichier de sortie appelé « croquis » ou « sketch » contenant toutes les capacités des apps Electron.

Grâce à un runtime JavaScript partagé, les « sketches » Quark ne pèsent que quelques kilo-octets au lieu des centaines de méga-octets des apps Electron courantes. Cela s’explique par le fait que le runtime représente environ 99 % du poids d'une app Electron. Par conséquent, les utilisateurs pourraient héberger des centaines de « sketches » sur leur machine tout en consommant les ressources d’une seule application classique. Nishkal Kashyap, le créateur de Quark, qualifie son outil de « carnet de croquis pour les apps desktop natives et non d’outil pour créer des apps de bureau.

Zoom sur les autres fonctionnalités de Quark

- Accès aux API de rendu Node.js et Electron ;
- Les « sketches » sont compatibles Mac, Windows et Linux. Les apps sont écrites une seule fois et exécutables sur toutes ces plateformes ;
- Support intégré de TypeScript, JavaScript, React.js et Vue.js ;
- L’IDE offre une mise en page qui permet de maximiser l'espace pour l'éditeur, mais il laisse suffisamment de place pour naviguer et accéder au contexte complet d'un projet ou d'un dossier ;
- L'éditeur de code Monaco fournit IntelliSense, la validation et le support des technologies de développement web. C'est le même éditeur que celui de Visual Studio Code de Microsoft ;
- L'utilisation d'un système de fichiers virtuel signifie que tout le code et tous les fichiers créés dans l’IDE sont facilement partageables entre les projets ;
- Le module webpack bundler sert à construire des projets. Le compilateur JavaScript de Babel est également supporté.

Quark est téléchargeable sur le site quarkjs.io.