Сделать из сайта — десктоп приложение? Легко.

Ruslan Tupolev
Sep 6, 2018 · 2 min read

Благодаря развитию JavaScript и веба в целом, многие приложения из памяти ПК перекочевали на страницы сайтов. Это очень хорошая тенденция, однако потребность в десктоп приложениях не снизилась.

Я люблю слушать музыку на стриминговых сервисах. В данный момент пользуюсь Яндекс.Музыкой. К великому сожалению, их сервис не имеет версии для ПК. Собственно, как и толкового API для реализации неофициальных клиентов.

Это все расстраивает, но выход есть всегда. Самым простым решением, является обычное приложение-обертка. Приложение будет аналогом Webview на мобильных устройствах. Просто открывает страницу в виде отдельного приложения, и большего не нужно.

На ум сразу пришел Electron. Ищем имплементации поставленной задачи, и все уже придумано до нас. Библиотека nativefier позволяет создавать обертки в виде Electron-приложения для любого адреса в интернете. Идеально, посмотрим что умеет.


nativefierэто cli библиотека позволяющая на основе базового шаблона сделать обертку для нужного вам веб-сервиса.

На примере web.whatsapp.com

Для начала установим библиотеку. Все стандартно, ставим через npm:

npm install nativefier -g

Здорово. Все что осталось сделать, ввести в терминал следующую команду:

nativefier music.yandex.ru

Теперь немного ждем:

На выходе мы получили папку с нашим приложением:


По-сути, вы уже имеете готовое приложение. Но мне не нравится два момента: название и иконка. Давайте это исправим!

Выполним ту же команду, но уже с дополнительными аргументами:

nativefier music.yandex.ru -name Yandex.Music --icon ~/rtplv-projects/yammy/og-image.png

В аргументе name указываем название приложения, а в icon — путь к иконке.

Иконки для macOS могут быть в формате .icns или .png. Так же при сборке под разные операционные системы, есть вероятность что потребуются дополнительные либы, перечень которых указан в документации nativefier.

Ура! Работает!

Ruslan Tupolev

Written by

Frontend developer from Russia, Samara

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade