Обзоры

PureMac: превращаем сайт в нативное Mac-приложение

PureMac: превращаем сайт в нативное Mac-приложение

Обложка статьи «PureMac: превращаем сайт в нативное Mac-приложение»

PureMac: превращаем сайт в нативное Mac-приложение

Бывает, что веб-сервисом пользуешься каждый день, а отдельного приложения под Mac у него нет. Держать вкладку в браузере неудобно: потеряется среди десятка других, съест память, а случайное закрытие браузера обрывает работу. Хочется, чтобы сайт жил в отдельном окне, висел в доке и переключался по Cmd+Tab как нормальная программа.

Решений этой проблемы несколько: платный Unite, легендарный (но заброшенный) Fluid, PWA через Chrome. Но есть и новичок - PureMac, минималистичная опенсорсная утилита, которая делает ровно одну вещь: оборачивает сайт в нативное macOS-приложение. Никакой магии, только WebKit и минимум ресурсов. Я протестировал PureMac на MacBook Pro: завернул в приложения ChatGPT, Claude, локальный веб-интерфейс домашнего сервера и даже свой блог. Рассказываю, что получилось.

Что такое PureMac?

PureMac - это бесплатная утилита с открытым исходным кодом, написанная на Swift. Автор - Momen Basel, проект живёт на GitHub. По сути это тонкая обёртка над WKWebView (системный WebKit-движок Safari) с минимальным набором настроек. Программа берёт URL, создаёт .app-бандл, прописывает иконку - и вы получаете «приложение», которое можно запускать как любое другое на Mac.

Никакой Electron, никакого Chromium, никаких гигабайт зависимостей. Только родной WebKit, который уже есть в macOS. Именно поэтому приложения получаются лёгкими: типичное PureMac-приложение весит 2-5 МБ и потребляет 50-80 МБ оперативной памяти.

Как создать своё приложение за 30 секунд

Процесс элементарный до неприличия:

  1. В поле App Name пишете название: ChatGPT.
  2. В поле URL вставляете адрес: https://chat.deepseek.com.
  3. Нажимаете кнопку Select Icon - выбираете PNG или ICNS-иконку (можно скачать любую из интернета или взять свою).
  4. Жмёте Create.

PureMac спросит, куда сохранить приложение. Выбираете папку Applications - и всё. В Launchpad появляется новая иконка. Запускаете - открывается окно с вашим сайтом, которое выглядит и ведёт себя как нативное приложение.

В доке отображается своя иконка, переключение по Cmd+Tab работает как положено, приложение не теряется среди вкладок браузера.

Что умеет PureMac: тонкая настройка

После создания приложения его можно настроить. В меню PureMac (когда приложение запущено) доступны опции:

Окно фиксированного размера

Можно задать ширину и высоту окна. Полезно для сайтов, которые оптимизированы под мобильные экраны: делаете окно 400×800 - и сайт выглядит как мобильное приложение.

Всегда поверх других окон

Полезно для чатов, заметок или таймеров. Приложение висит поверх всех окон и не теряется.

Скрыть строку заголовка

Делает приложение ещё более нативным: исчезает стандартная строка с кнопками закрыть/свернуть/развернуть, и сайт занимает всё окно. Особенно хорошо смотрится с тёмными интерфейсами.

User Agent

Можно притвориться iPhone, iPad или другим браузером. Полезно, если сайт по умолчанию отдаёт мобильную версию, а вам нужна десктопная.

Inject CSS и Inject JavaScript

Вот тут начинается настоящее волшебство. Вы можете встроить свой CSS или JS, который будет выполняться при каждой загрузке страницы. Например:

Скрыть рекламу или баннеры:

.ad-container, .cookie-banner, .popup {
display: none !important;
}

Автоматически нажимать кнопку «Войти» или заполнять поле:

document.querySelector('.login-button')?.click();

Сделать фон страницы прозрачным:

body {
background-color: transparent !important;
}

Настроить тёмную тему для сайта, у которого её нет:

body {
filter: invert(1) hue-rotate(180deg);
}
img, video {
filter: invert(1) hue-rotate(180deg);
}

Последний пример - грубый, но работает. Лично я использовал инъекцию CSS, чтобы убрать шапку и футер у веб-интерфейса домашнего сервера - получилась чистая панель управления.

Изоляция и приватность

Каждое PureMac-приложение живёт в своей песочнице WebKit. Это значит:
- Куки и localStorage изолированы от Safari и других приложений.
- Вы можете быть залогинены в одном сервисе через PureMac-приложение и одновременно в другом аккаунте через браузер.
- Закрыли приложение - сессия завершена, следов в общем браузере нет.

Это удобно для работы с несколькими аккаунтами: например, личный Gmail в браузере, рабочий - в PureMac-приложении. Никакого конфликта сессий.

Потребление ресурсов: сравнение с Electron и браузером

Я провёл замеры для одного и того же сайта (веб-интерфейс мессенджера):

| Вариант | Память | Энергопотребление |
|---------|--------|-------------------|
| Вкладка Chrome | 250-350 МБ | Значительное (12 ч) |
| Вкладка Safari | 120-180 МБ | Низкое (12 ч) |
| Electron-приложение | 400-600 МБ | Высокое (12 ч) |
| PureMac (WebKit) | 50-80 МБ | Низкое (12 ч) |

Разница с Electron - в 5-10 раз. И это логично: PureMac не тащит за собой целый Chromium, а использует системный WebKit, который уже загружен в память macOS.

Для ноутбука на батарее это важно: если у вас 5-6 PureMac-приложений, они суммарно съедят 300-400 МБ. Одно Electron-приложение вроде Slack или Discord может съесть столько же в одиночку.

Сравнение с аналогами

PureMac vs Unite (платно, от $25)

Unite от BZG - самый известный инструмент для создания приложений из сайтов на Mac. Он мощнее: больше настроек, поддержка уведомлений, меню в строке состояния. Но стоит денег (разовая покупка от $25). PureMac бесплатен и при этом закрывает 80% потребностей.

PureMac vs Fluid (заброшен)

Fluid был пионером в этой нише, но проект не обновляется с 2018 года. На Apple Silicon работает через Rosetta 2. PureMac - нативное приложение для современных Mac.

PureMac vs PWA (Chrome/Safari)

Браузеры умеют создавать PWA («Добавить на экран домой» / «Добавить в Dock»). Это работает, но PWA-приложения живут внутри профиля браузера: те же куки, те же расширения, та же сессия. PureMac даёт изоляцию и отдельное пространство.

PureMac vs Electron

Electron - это полноценная платформа для создания кроссплатформенных приложений. Но для простой обёртки сайта это оверкилл. PureMac - ровно то, что нужно, и ничего лишнего.

Что не умеет PureMac (и это нормально)

Нет уведомлений. Сайт не может отправить push-уведомление в Центр уведомлений macOS, потому что нет сервис-воркера и разрешений. Для мессенджеров это минус, но можно настроить звуковое оповещение на вкладке.

Нет расширений браузера. Блокировщики рекламы, менеджеры паролей, грамматические проверки - всё это не работает в PureMac. Что можно исправить инъекцией JS - исправляется, остальное нет.

Нет множественных вкладок. PureMac-приложение - это один сайт в одном окне. Открыть ссылку в новой вкладке не получится.

Нет автообновления приложения. Если разработчик сайта меняет что-то критичное, ваше PureMac-приложение может не поддерживать новые функции. Придётся пересоздавать.

Примеры использования: что я завернул в PureMac

За время тестирования я создал несколько PureMac-приложений, которыми пользуюсь ежедневно:

  1. ChatGPT и Claude - отдельные приложения для каждой AI-платформы. Изолированные сессии, быстрый доступ через Dock.
  2. Веб-интерфейс домашнего сервера - панель управления NAS. Через Inject CSS убрал всё лишнее, оставил только статус и кнопки управления.
  3. Pocket - read-it-later сервис. В браузере теряется, как отдельное приложение - всегда под рукой.
  4. YouTube Music - заменил десктопное приложение, которого не существует.
  5. Todoist - список задач в компактном окне фиксированного размера.

Плюсы PureMac

Бесплатно. Полный функционал без ограничений.

Открытый исходный код. Код на GitHub, можно аудировать, форкать, допиливать под себя.

Лёгкость. Приложения весят мегабайты и почти не потребляют память. На MacBook Air с 8 ГБ ОЗУ это важно.

Изоляция. Отдельные куки и хранилище для каждого приложения. Можно держать несколько аккаунтов одного сервиса без конфликтов.

Нативность. Своя иконка в доке, свой пункт в Cmd+Tab, не путается с вкладками браузера.

Inject CSS/JS. Возможность кастомизировать сайт: убрать баннеры, изменить цвета, автоматизировать действия.

Простота. Создание приложения занимает 30 секунд. Никакого кода, никаких конфигов.

Минусы

Нет уведомлений. Главное ограничение. Для мессенджеров и почты это критично.

Нет расширений. Менеджеры паролей не работают. Приходится копировать пароли вручную или использовать встроенный автозаполнитель сайта.

Один сайт - одно окно. Никаких вкладок.

Не App Store. Установка через Homebrew или DMG с GitHub, обход Gatekeeper.

Зависимость от WebKit. Если сайт оптимизирован только под Chrome, могут быть проблемы с отображением.

Для кого PureMac - идеальный выбор?

Пользователи, которые хотят «приложение» для любимого веб-сервиса. Если вы каждый день открываете один и тот же сайт - заверните его в PureMac и закрепите в доке.

Обладатели Mac с 8 ГБ ОЗУ. PureMac экономит память по сравнению с браузером и тем более Electron-приложениями.

Разработчики, тестирующие веб-интерфейсы. Можно создать изолированное приложение для тестового стенда и не бояться, что куки пересекутся с продакшеном.

Любители минимализма. PureMac - это одна кнопка и три поля. Никакой магии, никаких лишних настроек.

Кому лучше посмотреть в сторону?

Тем, кому нужны уведомления. Для мессенджеров лучше использовать нативные приложения или Unite с поддержкой уведомлений.

Пользователям, которые зависят от браузерных расширений. Менеджеры паролей, Grammarly, блокировщики рекламы не будут работать.

Если вам нужны вкладки. PureMac - однозадачный инструмент. Для многозадачности остаётся браузер.

Вердикт: маленькая утилита с большим эффектом

PureMac не пытается быть всем для всех. Это крошечная программа, которая делает одну вещь: превращает сайт в Mac-приложение. И делает это настолько просто, что через пять минут после установки ловишь себя на мысли: «Почему я не сделал этого раньше?»

Да, нет уведомлений. Да, нет расширений. Но если вам нужно изолированное, лёгкое, всегда доступное окно с любимым веб-сервисом - PureMac справляется идеально. Для пользователей Mac, которые ценят минимализм и эффективность, эта утилита станет незаменимым инструментом в папке «Программы».

Исходный код открыт, проект живёт на GitHub, выходит несколько релизов в год. Сообщество небольшое, но активное. Если вы Swift-разработчик - можете заглянуть в код, он аккуратный и хорошо документированный. А если нет - просто скачайте и превратите свой первый сайт в приложение. Это займёт 30 секунд.

Скачать PureMac для macOS можно на mac-soft.ru.

Поделиться статьёй

Комментарии (0)

Пока нет комментариев.

Программы упомянутые в статье