Десктопные приложения на JavaScript

Сейчас похоже наметилась позитивная тенденция, JS уже давненько желает создавать десктопные приложения.
Сейчас это уже возможно, существет несколько проектов, реализующих данную возможность.
Мне довелось послушать интересный небольшой доклад o проекте nw.js (node webkit), записанный с MoscowJS.
Наверняка будет интересно.
Доклад на Ютубе -> nw.js

3 лайка

я не совсем понял что мы получим на выходе, если это Windows OS, и мы соберем наше десктопное приложение сборщиком, то на выходе так же получим .exe файл который грубо говоря создаст папочку, разложит все куда нужно. Хорошо, а “запускаемый” файл будет так же .exe или какого-то своего формата, который откроет потом подобие браузерного окна с работающим в нем нашим функционалом? И нужно ли ставить клиенту какой-то доп. софт? по типу того же node.js

Планирую вскоре опробовать.
Но как описывается, в результате билда имеетмя папка с проектом, приложение имеет экзешник в папке.
Инсталятор для распространения приложения надо самому сделать, что довольно просто, в интеренете много софта для этих целей.
Такое.

Могу сказать, что когда ещё был в стенах Максимайзера, я работал с этим инструментом над одной из задач. Вот что могу сказать, так сказать после боевого опыта:

  • Очень удобно и просто писать что угодно, так как npm модули можно использовать прямо на клиентской странице (если честно, то когда я это узнал, то сразу понял, что теперь больше нет никаких ограничений вообще).
  • Есть консоль и можно все дебажить, логировать, изменять на лету.
  • Очень простой билд. Есть как таск для Grunt (и может Gulp, не знаю не искал), так и ручками через консоль, что я в принцие и делал.
  • Билд можно делать на любую платформу, при этом не меняя ничего в самом приложении.
  • Билд для windows просто .exe файл (1 файл), что помогло использовать эту фичу простым смертным.
  • Есть фичи, которые просто меняют все нам известные возможности и ещё больше развязывает руки:
    • Cross Origin Control выключен, что позволяет лезть в iframe (даже если он https) из другого домена :smile:
    • Можно загружать, такие ресурсы как Google в iframe :smile:
    • Можно успешно тригерить клик на <input type="file" /> и получать диалоговое окно.

И самое главное, что можно использовать любую библиотеку, которую ты хочешь. Я в том проекте использовать angular и underscore + помогал мне less. А ещё спокойно работал localStorage с протоколом file, ведь там именно этот протокол.

И к ответу Макса (@Maxim) инсталяху делать может и можно, но легче всего просто сбросить файл и все будет работать, даже на совершенно чистой машине :wink:

2 лайка

Круто, Спасибо за дополнение! :raised_hand: