Вайб кодинг

Настоящее требует от инженера ПО новых подходов. Пришлось переквалифицироваться. Здесь некоторые pet-проекты, код которых создан с помощью ИИ.

Пулемер

«Пулемер» — Android-приложение на Kotlin и Jetpack Compose: калькулятор пули и вистов для Преферанса.

Настраиваются стоимость виста, число игроков (2–4) и имена. Гора и висты вводятся по каждому игроку отдельным экраном, итог считается с результатом по каждому игроку. Экраны можно листать свайпом. Состав и имена запоминаются между запусками. Без интернета, аккаунтов и разрешений — всё считается на устройстве.

SkyWatch

Веб-сервис, принимающий живой поток астрономических событий: алерты обсерватории ZTF (вспышки сверхновых, астероиды) приходят через Kafka-брокер Fink, прогоняются через собственный пайплайн на Python (aiokafka, Avro) и складываются в ClickHouse, поверх — REST API на FastAPI и дашборд на Vue 3: лента свежих алертов, статистика по дням и классам, кривые блеска объектов, подборка самых интересных кандидатов.

Архитектура расширяемая: каждый внешний источник — отдельный коннектор, пишущий в общую шину в едином конверте, так что новый поток (Rubin/LSST, GCN) добавляется без изменения ядра. Доставка at-least-once с дедупликацией на стороне БД, битые сообщения уходят в dead letter queue. Деплой на VDS автоматический: GitHub Actions собирает образы в ghcr и выкатывает по пушу в master.

Проект на Github. Сам развернутый проект здесь.

Pedal Buttons

GUI приложение под Windows (MSBuild), написанное на C++17 с Dear ImGui, которое превращает ножную педаль на Arduino Nano в пульт управления любой программой через горячие клавиши. Для работы в DAW, плеерах и везде, где руки заняты инструментом.

Две педали дают четыре действия — клик и удержание на каждую. Профили под разные приложения: нужное окно само выходит на передний план перед отправкой клавиш, а профиль переключается по тому, что сейчас в фокусе. Сочетания назначаются нажатием, плата находится сама, состояние видно по иконке в трее. Без установки и аккаунтов: exe без DLL, прошивка и один файл конфига.

Проект на Github.

Schedule Timer

GUI приложение под Windows, написанное на C#, которое можно использовать как табата-таймер и еще множеством способов для управления временем. Для сфокусированной работы, тренировок и всего, что идёт по таймингу.

Настраиваются вложенные сценарии произвольной сложности — повторы, подготовка. Можно указывать свои звуки на события. Один таймер под разные проекты — по стопу получите время по каждому периоду и итог. Без установки и аккаунтов: exe плюс один файл конфига.

  • Скачать напрямую можно с Github
  • Есть дистрибутив на Itch
  • Можно установить через winget: winget install ScheduleTimer
  • Проект на Github

Voice Pitcher

Кроссплатформенное (на CMake) GUI-приложение на C++17 для десктоп, которое в реальном времени показывает высоту тона голоса. Поёшь или говоришь в микрофон — на ползущем во времени графике рисуется кривая тона поверх сетки музыкальных нот, с текущей нотой, отклонением в центах и частотой в герцах. Для распевок, тренировки интонации и контроля голоса.

Умный автомасштаб: экран держится на месте, пока поёшь в октаве, и сам сдвигается или расширяется при смене регистра. Настраиваются шумоподавление и фильтр коротких всплесков, вход можно мониторить в любое устройство вывода. Детектор тона — MPM/YIN, звук через miniaudio, интерфейс на Dear ImGui. Без установки и аккаунтов: один бинарник плюс ini-файл с настройками.

Проект на Github.

Windows Remote Control

Веб-приложение для удалённого управления Windows-машинами: открываете дашборд в браузере, видите список подключённых компьютеров и шлёте им команды — перезагрузка, список открытых окон, активное окно, сообщение на экран. Сервер на Python (Tornado), агент на C# .NET, интерфейс на Vue 3 и TypeScript. Через WebSocket.

Хосты появляются и пропадают в списке сами, без перезагрузки страницы. Логины берутся из стороннего проекта — отдельных аккаунтов заводить не нужно. Агент работает задачей Планировщика в сессии пользователя (Session 0 недоступна для пользователя). Дашборд ставится на телефон как PWA приложение.

Xray монитор

Легковесный демон для мониторинга Xray сервера с уведомлениями в Телеграм. Показывает, кто присоединился, кто разорвал соединение.

Написан на C++ 17 с использованием CMake, Boost. Его, кстати, начал писать руками, но почти сразу перешел на ИИ.

Проект на Github.