Как GitHub превратили в полноценный магазин приложений
Вы когда-нибудь пробовали найти годный open-source софт на GitHub с телефона? Сначала нужно вбить название в поиск, потом продраться через список репозиториев, найти вкладку Releases, развернуть список ассетов и угадать, какой из десяти APK-файлов подходит под архитектуру вашего процессора. А через неделю процедуру приходится повторять, чтобы проверить, не вышло ли обновление.
Разработчики проекта GitHub Store решили, что этот квест пора прекращать. Они упаковали хаотичный мир гитхаб-релизов в привычный интерфейс стора, который сам находит нужные бинарники и следит за их актуальностью.
Что это вообще такое
GitHub Store — это кроссплатформенный клиент, написанный на Kotlin Multiplatform. По сути, это агрегатор, который сканирует GitHub на предмет публичных репозиториев с готовыми сборками. Если автор проекта выложил .apk, .exe, .dmg или .AppImage, приложение подхватит это и оформит в виде аккуратной карточки с описанием из README, скриншотами и кнопкой «Установить».
Проект ориентирован в первую очередь на Android-пользователей, но благодаря Compose Multiplatform у него есть версии для Windows, macOS и Linux. Это удобно, если вы часто ставите десктопные утилиты вроде Obsidian или ShareX и хотите обновлять их в один клик, а не проверять вручную.
Чем проект зацепил меня
Я часто тестирую разные лаунчеры и системные утилиты, которых нет в Google Play по понятным причинам. Обычно для этого используют F-Droid, но там софт обновляется с задержкой, а многих крутых проектов просто нет в репозиториях. GitHub Store решает эту проблему напрямую.
Умный поиск по релизам
Приложение не просто показывает всё подряд. Оно использует фильтры и скоринг: если вы зашли с Android, в топе будут проекты с метками android и mobile. Система игнорирует исходники в .zip и .tar.gz, выуживая только готовые инсталляторы.
Управление установленным софтом
Одна из самых полезных фич — возможность «привязать» уже установленные на устройстве приложения к их репозиториям на GitHub. Если у вас стоит какая-то утилита, скачанная полгода назад из браузера, GitHub Store поможет найти её «родительский» репо и начнет присылать уведомления о новых версиях.
Тихая установка через Shizuku
Для тех, кто не любит постоянно нажимать «Установить» и «Ок» в системных диалогах Android, есть поддержка Shizuku. Это позволяет обновлять весь зоопарк open-source софта в фоновом режиме, почти как в официальном сторе.
Техническая начинка
С точки зрения кода проект интересен как пример зрелого использования Kotlin Multiplatform (KMP). Автор разделяет логику работы с API, кэширование и предметную область, что позволяет легко портировать клиент на разные ОС.
Для интерфейса используется Compose Multiplatform. Сейчас проект готовится к большому переезду на RikkaUI — это собственная библиотека компонентов автора, вдохновленная идеями shadcn/ui. Видно, что разработчик уделяет много внимания визуалу: есть поддержка динамических тем (Material You), AMOLED-режим и даже специфические эффекты вроде «жидкого стекла».
Внутри также реализована гибкая система работы с сетью. Поскольку GitHub API имеет лимиты на запросы, в приложении есть поддержка прокси (HTTP/SOCKS) и возможность авторизации через OAuth, чтобы расширить эти самые лимиты.
Как это работает для разработчиков
Если вы сами пишете софт и хотите, чтобы он появился в GitHub Store, вам не нужно никуда подавать заявки. Достаточно соблюдать три простых условия:
- Репозиторий должен быть публичным.
- В релизах должны быть файлы с расширениями
.apk,.exe,.msi,.dmg,.pkg,.deb,.rpmили.AppImage. - Желательно прописать теги (topics) и внятное описание, чтобы поисковые алгоритмы приложения подняли ваш проект выше в категориях Trending или Hot Release.
Итоги
GitHub Store — это отличный инструмент для тех, кто предпочитает свободное ПО и хочет держать его в порядке. Он избавляет от рутины с проверкой обновлений и поиском нужных веток в репозиториях.
Кому стоит попробовать:
- Android-пользователям, которые активно используют софт с GitHub и F-Droid.
- Десктопным юзерам, которым лень вручную обновлять мелкие open-source утилиты.
- Разработчикам на Kotlin, которые хотят посмотреть на качественную реализацию KMP-проекта с живой аудиторией более 65 тысяч пользователей.
Проект бесплатный, открытый и активно развивается. Единственный нюанс — на macOS приложение пока не нотариализовано, поэтому при первом запуске придётся зайти в настройки безопасности и разрешить запуск вручную. В остальном — это, пожалуй, самый удобный способ взаимодействия с миром открытого софта на сегодня.
