Пользовательский интерфейс для настольного приложения на основе node.js

Я понимаю, что node.js - это javascript на стороне сервера. Я хочу написать настольное приложение, используя node.js. Какой инструмент лучше всего подходит для создания пользовательского интерфейса для этого приложения/какие языковые рамки обычно используют люди для создания графического интерфейса для приложения node.js.

Хотя Node.js является кроссплатформенным, не все библиотеки графического интерфейса являются кроссплатформенными; следовательно, каковы ваши целевые операционные системы?
Кстати , менеджер пакетов Node, вероятно, найдет что-то для вас.
На самом деле не думал о целевой операционной системе, но было бы хорошо, чтобы она работала на всех платформах. Вебкит, кажется, делает это.

Ответы (4)

NW.js (ранее node-webkit)

Вы можете писать настольные приложения, используя веб-сайты (HTML, CSS, JavaScript), сохраняя при этом доступ ко всем функциям и API-интерфейсам Node.JS.

Цитируя его ридми на GitHub:

NW.js — это среда выполнения приложений, основанная на Chromium и node.js. Вы можете писать собственные приложения на HTML и JavaScript с помощью NW.js. Он также позволяет вызывать модули Node.js непосредственно из DOM и обеспечивает новый способ написания собственных приложений со всеми веб-технологиями.

Особенности (также цитата из ридми ):

  • Приложения, написанные на современных HTML5, CSS3, JS и WebGL.
  • Полная поддержка API-интерфейсов Node.js и всех его сторонних модулей.
  • Хорошая производительность: Node и WebKit работают в одном потоке: вызовы функций выполняются напрямую; объекты находятся в одной куче и могут просто ссылаться друг на друга;
  • Легко упаковывать и распространять приложения.
  • Доступно в Linux, Mac OSX и Windows
node-webkit был переименован в NW.js

Обновление 2016 г.

Есть несколько вариантов написания приложений с графическим интерфейсом в Node:

Электрон может быть использован для этого. Вы можете проверить это здесь . Это все с помощью HTML, CSS и JS. Надеюсь, это поможет.

Есть проект под названием NodeGUI , основанный на Qode. Это позволяет разрабатывать приложения с использованием набора инструментов QT. Если вы использовали PyQT/PySide, вы должны чувствовать себя как дома.

NodeGUI все еще находится в активной разработке (не рекомендуется для производства) и может не содержать всех виджетов/функционала QT.