- Integrate terminal as persistent component in main App layout - Add drag-to-resize functionality with min/max height constraints - Implement auto-scroll to bottom for new terminal lines - Prevent context menu and enable text selection in terminal content - Add responsive behavior that hides terminal on small screens
Кьюарминатор
⚠️ Дисклеймер
Данное приложение создано исключительно в образовательных целях. Разработчик не поддерживает и не поощряет использование приложения для обхода учебных обязательств. Ответственность за использование программы полностью лежит на пользователе.
В коде приложения не содержатся никакие данные о сайтах ВУЗов, пользователю предоставляется возможность самостоятельно задать электронные адреса для проверки взаимодействия с гипотетической платформой.
💡 Идея
Дистант мог бы быть прекрасной возможностью отдохнуть, попить чаёк, поиграть, расслабиться, но необходимость отмечаться заставляет нас внимательно следить за ходом лекции в попытках выловить QR-код. Это приложение призвано автоматизировать данную задачу, чтобы Вы смогли хоть на полтора часа забыть о том, что сегодня ВУЗ проводит пару прямо у Вас дома.
🎩 Функции
- Обнаружение QR-кодов
- Вывод ссылки в консоль
- Автоматический переход по ссылке
⏰ Запланированные
- GUI
- Звуковой сигнал
- Push-уведомления с ntfy
🤔 На рассмотрении
- Скриншот только области окна браузера
- Работа при свёрнутом окне браузера
- Отметка через API журнала
📐 Реализация
Приложение делает скриншот окна браузера с заданным интервалом и анализирует снимки с помощью OpenCV, обнаруживая и декодируя QR-коды. Ссылки, ведущие на журнал посещаемости, автоматически открываются в браузере, либо используется другое альтернативное поведение, выбранное пользователем.
🧻 Начало работы
🖥 ОС
Вам потребуется поддерживаемая операционная система из списка ниже. Если галочки нет, то поддержка появится в будущем.
- Linux (Wayland)
- Linux (XORG)
- Windows 10/11 (не тестировалось, должно билдиться)
- MacOS (не тестировалось, должно билдиться)
⬇️ Установка
Перейдите в список релизов и скачайте портативный исполняемый файл для Вашей платформы. Если хотите собрать приложение самостоятельно, читайте следующий раздел.
⚙️ Настройка
При первом запуске будет необходимо выполнить настройку приложения. В Linux файл конфигурации располагается здесь:
~/.config/auto-attendance/auto-attendance.toml. Необходимо получить актуальный файл конфигурации, который будет работать с конкретным журналом посещений
🔨 Сборка
🧩 Зависимости
- git
- make
- curl
- opencv 4.12.0
- go 1.25.4
Go
Используйте следующую команду в терминале:
go install git.weirdcat.su/weirdcat/auto-attendance/cmd/qrminator-cli@main
Далее можно запускать командой:
qrminator-cli
Убедитесь, что вы добавили ~/.go/bin в PATH. Например:
export PATH=$PATH:~/.go/bin
Make
Склонируйте мой репозиторий:
git clone https://git.weirdcat.su/weirdcat/auto-attendance
Перейдите в него:
cd auto-attendance
Запустите сборку:
# для текущей платформы
make
# make build-linux
# make build-macos
# make build-windows
Далее для запуска можете использовать команду make run.
