process — это объект, позволяющий получить информацию о типе запущенного процесса (рендеринг или основной процесс), версию Chrome и Electron, а также путь до выполняемого js-файла.
Объект File
— это абстракция над нативным File, передающая стандартному HTML5 file API путь к физическому расположению файла в файловой системе пользователя.
Тег <webview>
— возможность встраивания гостевого контента (веб-страницы) в гостевой контейнер, работающий в отдельном процессе.
Функция window.open
— создание нового окна на странице (экземпляр BrowserWindow
) и возможность отправки сообщений в родительское (основное) окно.
app — модуль, отвечающий за управление жизненным циклом приложения. Предоставляет доступ к событиям (выход, фокус и т.д.) и методам (имя, версия, док и т.д.), позволяющим управлять приложением.
auto-updater — возможность автоматического обновления приложения. На момент написания статьи доступен только на OS X (на GitHub висит PR для Windows от 15 июня этого года).
browser-window — создание нового окна браузера с заданными параметрами (размер, иконка, заголовок, позиционирование и т.д.). Предоставляет доступ к событиям и методам, позволяющим управлять созданным окном.
content-tracing — модуль, собирает данные трассировки, генерируемые контентным модулем Chromium. Для анализа данных требуется браузер Chrome.
dialog — создание нативных диалоговых окон. Модуль позволяет создавать нативное окно открытия файлов или директорий, сохранения файлов, а также возможность отображать окно сообщения.
global-shortcut — регистрация и сопровождение глобальных сочетаний клавиш, доступных для приложения после его полной загрузки.
ipc (main process) — модуль, обрабатывающий синхронные и асинхронные сообщения, посылаемые из процесса рендеринга (веб-страницы) в главный процесс.
menu — создание нативного меню приложения и контексного меню. Пункты меню создаются с помощью модуля menuItem
.
menu-item — позволяет добавлять пункты в контексное меню или меню приложения.
power-monitor — модуль, предоставляющий возможность отслеживать состояние питания системы после полной загрузки приложения, используя несколько событий.
power-save-blocker — включение этого модуля запрещает переход системы в спящий режим, когда запущено окно, на котором подключен этот модуль.
protocol — регистрация собственного протокола или перехват уже существующего. Протокол здесь следует понимать буквально: http, atom, file и т.д.
session — объект, являющийся свойством webContents
, который в свою очередь является свойством BrowserWindow
. Предоставляет возможность работать с cookies и некоторыми другими методами.
web-contents — одно из свойств BrowserWindow
, отвечающее за рендеринг и контроль веб-страницы. Позволяет получать информацию о текущем окне и управлять его содержимым (аудио, копировать, вставить и т.д.).
tray — создание иконки в трее, а также его содержимого (пунктов меню). Есть специальные методы для работы с различными операционными системами, например, доком на OS X.
ipc (render) — несколько методов, позволяющих отправлять сообщения из процесса рендеринга (веб-страницы) в главный (основной) процесс.
remote — простой способ межпроцессного взаимодействия (IPC) между процессом рендеринга и основным процессом.
web-frame — предоставляет возможность управлять рендеренгом веб-страницы (зум, проверка правописания, приватное окно).
clipboard — предоставляет доступ к буферу обмена и таким операциям, как копирование и вставка.
crash-reporter — модуль позволяет отправлять отчеты о сбоях в работе приложения на удаленный сервер.
native-image — возможность передачи изображений в API, которые требуют наличия изображения (иконки), например, модуль tray
или browser-window
. Есть поддержка ретины и работы с изображениями в буфере обмена.
screen — предоставление информации о разрешении, дисплеях и положении курсора. Работает только после полной загрузки приложения.
shell — методы для работы с десктопными приложениями. Здесь речь идет об открытии файлов в других приложениях, удалении файлов и т.д.