Skip to content

Repository files navigation

BoostiFy

Удобное управление Steam-активностью и достижениями.
Современный интерфейс, параллельные сессии и изолированный runtime.

Latest Release Downloads CI Python Version PyQt6 .NET Framework 4.8 Windows License


Warning

Используйте BoostiFy только со своим Steam-аккаунтом. Автоматизация активности и изменение достижений могут иметь последствия для аккаунта или нарушать правила платформы. Вы используете эти возможности на свой риск.

🎨 Что нового в v1.1.2

Обновление про мелочи, которые мозолят глаза каждый день. Больше всего досталось таблице игр — тому экрану, на который смотришь всё время работы программы.

  • 🔔 Уведомление о новой версии. При запуске программа спрашивает у GitHub последний релиз и, если вышло обновление, показывает окно с переходом «текущая → новая» и кнопкой, открывающей страницу релиза. «Пропустить» относится к конкретной версии: о ней больше не напомнят, о следующей — напомнят. Если GitHub недоступен, окно не появляется и в работе ничего не меняется. Проверку можно выключить совсем — переменной окружения BOOSTIFY_NO_UPDATE_CHECK=1.
  • 🎚️ Таблица игр стала опрятнее. Выделенная строка больше не рассыпается на подсвеченные кусочки, ушли резкие линии сетки и острые углы у заголовка, а полоса прокрутки стала тонкой, без стрелок и встала ровно напротив строк — раньше она поднималась вдоль заголовка к скруглённому углу.
  • 📐 Строки перестали выезжать за нижний край. Из-под края таблицы выглядывала обрезанная полоска строки, а настройка «Отрисовка таблицы» на больших значениях показывала меньше строк, чем обещала: на 20 помещалось 15. Теперь в таблицу попадает ровно столько строк, сколько выбрано, и все они целые. Диапазон настройки — от 10 до 20 строк: на меньших значениях строки растягивались в широкие полосы и список переставал читаться.
  • 📏 Столбцы подстраиваются под содержимое — на библиотеке в тысячи игр номер строки и AppID больше не сжимаются до «1...» и «2461...».
  • ↕️ Сортировка по клику на заголовок столбца — раньше упорядочить таблицу из интерфейса было нельзя.
  • 🧾 В таблице просто «Ошибка», подробности — в журнале. Длинная причина в столбец не помещалась и обрезалась. Теперь статус короткий, а полный разбор сбоя с ответом Steam сохраняется в отдельный файл boost_errors.log в папке %LOCALAPPDATA%\BoostiFy\logs — его удобно приложить к сообщению об ошибке.
  • 🪟 Меньше лишних окон. После подтверждения действия больше не выскакивает второе окно с отчётом — не нужно закрывать «Удалить?», а следом ещё и «Удалено!». Результат коротко показывается внизу экрана настроек. Ошибки по-прежнему выводятся окном: их важно заметить.
  • 💬 Аккуратные диалоги. Текст больше не переносится вкривь, когда одно слово уезжало на отдельную строку. Сами сообщения стали короче и понятнее.
  • Свои значки свернуть и закрыть. Раньше это были текстовые символы, и крестик выходил заметно крупнее и жирнее тире. Теперь значки нарисованы вектором — одной толщиной и одного размера, с подсветкой под курсором: красной у закрытия, как в любом окне Windows.
  • 📄 Понятные имена сохранённых настроек. Вместо config_20260803_203353_021100.json — «Конфиг 2026-08-03 20-36». Названия читаются с первого взгляда и сами выстраиваются по дате, а сохранённое раньше продолжает работать.
  • 📊 Статистика стала ровной и короткой. Блоки выровнены по левому меню, а поясняющий текст, который повторял и без того понятные цифры, убран.
  • Честное описание автоочистки. Настройка обещала очистить весь список, хотя из таблицы убираются только успешно обработанные игры.

Обновление косметическое: сценарий работы, настройки и сохранённые данные остаются прежними — обновляться можно поверх 1.1.1 без каких-либо действий.

✨ Почему BoostiFy

BoostiFy объединяет простой PyQt6-интерфейс и отдельный C# runtime для работы со Steam. Интерфейс остаётся отзывчивым, тяжёлые операции выполняются в фоне, а каждая игра обрабатывается собственным изолированным worker-процессом.

Возможность Что получает пользователь
Параллельные сессии Одновременная обработка нескольких игр с настраиваемым количеством слотов.
Умная очередь Скользящий запуск, задержки между задачами и ETA на основе реального расписания слотов.
Проверка владения AppID проверяется через запущенный Steam Client перед добавлением игры.
Достижения Опциональная разблокировка с отдельным предупреждением перед запуском.
Надёжное завершение Windows Job Object останавливает дочерние workers даже при аварийном закрытии GUI.
Безопасное хранение JSON записывается атомарно, ввод нормализуется, пользовательские данные находятся вне каталога программы.

🚀 Ключевые возможности

  • 🎮 Добавление игр по AppID или точному названию, с массовым импортом всей библиотеки аккаунта.
  • До 60 параллельных слотов с отдельными задержками запуска, завершения и между задачами.
  • 🏆 Опциональная работа с достижениями с явным подтверждением перед изменением данных Steam.
  • 📈 Живой прогресс и статистика: расчёт оставшегося времени, распределение статусов и история сессий.
  • 🔁 Циклический режим и автоматическая очистка таблицы.
  • 🔎 Фильтрация, сортировка и быстрое управление таблицей игр.
  • 🛡️ Нормализация конфигурации, AppID и повреждённых данных, а также ротируемые логи для диагностики.

🛠️ Установка и запуск

Для работы не нужно устанавливать Python, .NET SDK или собирать проект вручную.

Что потребуется:

  • Windows 10 (версия 1903 и новее) или Windows 11 — на них уже есть .NET Framework 4.8, ничего доустанавливать не нужно;
  • установленный Steam с выполненным входом в аккаунт.

Порядок запуска:

  1. Перейдите на страницу последнего релиза.
  2. Скачайте BoostiFy.exe из раздела Assets.
  3. Убедитесь, что Steam запущен и выполнен вход в аккаунт.
  4. Запустите BoostiFy.exe.

Note

Программа не подписана цифровым сертификатом, поэтому SmartScreen может предупредить о неизвестном издателе. Сверить скачанный файл можно по контрольной сумме SHA-256, опубликованной в описании релиза.

Скачать BoostiFy.exe

Все настройки, выбранные игры и статистика сохраняются между обновлениями в %LOCALAPPDATA%\BoostiFy.

⭐ Поставьте звезду

Если BoostiFy оказался полезен — нажмите Star в правом верхнем углу страницы. Это одно нажатие, но оно заметно помогает: проект становится виднее тем, кто ищет похожее решение, а мне как автору — понятнее, что работу стоит продолжать.

Поставить звезду

🤝 Участие в разработке

Сообщения об ошибках, идеи и pull request приветствуются. Перед отправкой изменений пожалуйста, запустите unit-тесты, Ruff, smoke-тест, функциональный GUI-прогон и нагрузочные проверки — все они выполняются и в CI.

Если ошибка связана со Steam runtime, приложите версии Windows и Steam, AppID, последние строки лога и укажите, воспроизводится ли проблема в --self-test.

🔧 Технический обзор

BoostiFy построен на Python 3.14 и PyQt6, а вся работа со Steam вынесена в отдельный C# runtime на .NET Framework 4.8. GUI и runtime общаются через изолированные worker-процессы: падение одной игры не влияет на интерфейс, а Windows Job Object гарантирует остановку всех дочерних процессов вместе с GUI.

# Запуск из исходников
python -m venv .venv
.venv\Scripts\pip install -r requirements-dev.txt
python BoostiFy/runtime/build.py        # собрать изолированный C# runtime
.venv\Scripts\python main.py

# Тесты и проверки качества
.venv\Scripts\pytest
.venv\Scripts\ruff check .
.venv\Scripts\python scripts/smoke_test.py --require-runtime
.venv\Scripts\python scripts/functional_qa.py
.venv\Scripts\python scripts/stress_test.py

# Сборка исполняемого файла
.venv\Scripts\python scripts/package.py

📄 Лицензия

BoostiFy распространяется под лицензией MIT. Вы можете использовать, изменять и распространять проект при условии сохранения уведомления об авторских правах и текста лицензии. Подробности приведены в файле LICENSE.


Разработано с ❤️ под маркой CLC corporation
@deeCaT

About

Бустер часов и менеджер достижений Steam для Windows с параллельным запуском игр, умной очередью и современным интерфейсом PyQt6.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages