NW.js — это фреймворк для разработки настольных приложений с использованием веб-технологий (HTML, CSS, JavaScript), объединяющий движок Chromium и среду выполнения Node.js. Проект позволяет запускать веб-приложения в виде нативных исполняемых файлов на различных операционных системах, предоставляя одновременно доступ к возможностям браузера и к API Node.js из контекста рендерера. Концепция предусматривает упаковку ресурсов приложения вместе с рантаймом, что упрощает распространение и установку готовых программ.
Изначально разработанный как решение для интеграции клиентской части на web-технологиях с возможностями системного уровня, NW.js эволюционировал в инструмент для создания как простых утилит, так и полноценных кроссплатформенных приложений. Фреймворк поддерживает механизмы взаимодействия между процессами, управление окнами и нативные диалоги, а также позволяет подключать сторонние Node-модули и использовать существующие веб-библиотеки. Документация и примеры обычно описывают сценарии упаковки, настройки манифеста и управления жизненным циклом приложения.
- Интеграция Chromium и Node.js: одновременный доступ к DOM и Node API в одном контексте рендерера.
 - Кроссплатформенность: сборка и запуск приложений на основных ОС, включая Windows, macOS и Linux.
 - Упаковка приложения: объединение веб-ресурсов и рантайма в единый исполняемый файл или дистрибутив.
 - Управление окнами и интерфейсом: создание нескольких окон, настройка их свойств и поведения на уровне приложения.
 - Доступ к нативным функциям: использование файловой системы, процессов, сетевых возможностей и других модулей Node.js.
 - Расширяемость: подключение нативных модулей и использование существующих npm-пакетов.
 - Конфигурация через манифест: определение точек входа, прав доступа и настроек приложения в JSON-манифесте.
 - Поддержка разработческих режимов: отладка, горячая перезагрузка и инструменты разработчика Chromium.
 - Развертывание и распространение: создание установщиков и дистрибутивов для конечных пользователей.