Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Seconder

Трекер экранного времени для Windows: показывает, сколько часов уходит на игры, IDE, браузеры и мессенджеры — и ни секунды не тратит на системные процессы.

Python PySide6 Platform License

Обзор


Что это

Seconder тихо сидит в трее и считает, в каком приложении вы реально работали — по активному окну, а не по списку запущенных процессов. Свернули Minecraft и ушли за чаем? Через две минуты бездействия счётчик встанет на паузу.

Системный мусор в статистику не попадает: всё из C:\Windows, оболочка проводника, хосты UWP-приложений и служебные брокеры отфильтрованы заранее. В списке остаётся только то, что вы сами открывали.

Возможности

  • Честный подсчёт активного времени — по окну в фокусе, с детектом простоя.
  • Умные имена приложенийCode.exe становится Visual Studio Code, javaw.exe с нужными аргументами — Minecraft; остальное подписывается по FileDescription из ресурсов exe.
  • Живые графики — активность по часам и дням, кольцо долей, тепловая карта «день × час», тренд за две недели. Всё нарисовано на QPainter, без тяжёлых зависимостей.
  • Шесть тем — Midnight, Nebula, Carbon, Matrix, Daylight, Sakura.
  • Свои обои и прозрачность — любая картинка на фоне, отдельные ползунки для прозрачности окна и затемнения обоев.
  • Широкий нестандартный шрифт — по умолчанию Bahnschrift, но можно положить свой .ttf в seconder/assets/fonts.
  • Автозапуск с Windows — одним переключателем, без прав администратора.
  • Жизнь в трее — крестик сворачивает окно, а не выключает программу. Закрыть окончательно можно только правым кликом по значку → «Выход».
  • Данные только у вас — локальная база SQLite, экспорт в CSV, никакой сети.

Скриншоты

Приложения Статистика
Настройки

Установка

Нужен Python 3.10 или новее.

git clone https://github.com/<username>/Seconder.git
cd Seconder && pip install -r requirements.txt
python main.py

Ключ --minimized запускает программу сразу в трей — именно так её дёргает автозапуск.

Сборка в один exe

pip install pyinstaller && python -m PyInstaller Seconder.spec

Готовый файл появится в dist/Seconder.exe. Он самодостаточен: базу и настройки создаст в %LOCALAPPDATA%\Seconder при первом запуске.

Как это устроено

main.py                  точка входа, единственный экземпляр через мьютекс
seconder/
  config.py              настройки в JSON и пути к данным
  database.py            SQLite: корзины «приложение + день + час»
  tracker.py             фоновый поток, опрос активного окна
  appinfo.py             PID → приложение, отсев системных процессов
  winapi.py              ctypes-обёртки над user32/kernel32/version
  autostart.py           запись в HKCU\...\Run
  fmt.py                 форматирование длительностей и дат
  ui/
    main_window.py       безрамочное окно, трей, ресайз за края
    theme.py             палитры и генерация QSS
    charts.py            столбики, кольцо, линия, тепловая карта
    widgets.py           карточки, строки списка, тумблеры
    pages.py             обзор, приложения, статистика
    settings_page.py     настройки

Время складывается в корзины по часам, поэтому база остаётся крошечной даже за год наблюдений, а любой график строится одним запросом. Трекер живёт в отдельном потоке со своим соединением к SQLite (режим WAL), интерфейс читает данные своим — блокировок не возникает.

Частые вопросы

Программа не видит игру в полноэкранном режиме. Видит, пока игра остаётся окном в фокусе. Если античит скрывает процесс, путь к exe прочитать не выйдет — такие игры в статистику не попадут.

Как убрать приложение из статистики? Правый клик по строке в разделе «Приложения» → «Скрыть из статистики». Вернуть можно в настройках, в карточке «Скрытые приложения».

Где лежат данные? %LOCALAPPDATA%\Seconder\usage.db и settings.json рядом. Переменная окружения SECONDER_DATA_DIR переносит их куда угодно — удобно для портативной версии.

Почему после сна за ночь не накрутилось время? Трекер отбрасывает интервалы, которые сильно длиннее периода опроса, и не считает время после порога простоя.

Лицензия

MIT

About

A fresh, beautiful, and feature‑rich Windows app for tracking digital habits and time spent on the PC.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages