EncloseJS — отличная штука для создания, например, сетевой или системной утилиты. Но создавать на ее основе полноценное GUI вряд ли захочется.
Однако, в недрах Node.js, npm и Github обнаружился инструмент чрезвычайной полезности именно для построения полноценных кроссплатформенных десктопных приложений. Пока попробовал на уровне Hello world, но потенциал ясен. Используется нативное API для каждой платформы — Windows, Mac, Linux и Chromium для GUI.
В принципе, изображение десктопных приложений посредством броузерного контроллера, вещь не новая, начиная от hta-приложений. Но проблема тех приложений была в том, что отображаемая броузером страница запускалась в песочнице (sandboxed environment) и практически не имела доступа к системным ресурсам. Ну и все прочие броузерные ограничения, включая защиту от XSS, не давали разработчику развернуться. Здесь же используются все API Node.js, что позволяет взаимодействовать с операционной системой на самом низком уровне. Это открывает безграничные возможности для разработки.
Пример — приложение для WordPress.com. Мало? Вот приложение от Microsoft.
Ну, и все прелести JavaScript, HTML и CSS разработчику в руки. Да, и чуть не забыл самое главное, — Angular 2 тоже!