Мои проекты 2021: умный дом, журнал медитаций, календарь активностей

22.02.2022, 23:50 - 4 мин читать

Что я делал в 2020-м на GitHub.

gihub 2020 stats

Оглавление:

    Мои проекты 2020

    Этот год был слабым по количеству, 466 контрибьютов, последний раз такое было в 2016-м. Этому есть причины:

    • На новой работе стало меньше проектов, которые можно легко выложить в открытый доступ
    • Некоторые проекты касаются умного дома и написаны как попало, мелкими скриптами, которые не коммичу

    По языкам: сплошной JavaScript.

    Умный дом

    Алиса научилась:

    • Обновлять аккорды
    • Варить кофе
    • Наливать воду из фильтра
    • Записывать долги в таблицу долгов
    • Открывать приложения на телефоне
    • Заполнять таблицу активности
    • Прикрывать штору от солнца
    • Следить за акциями

    Новые проекты:

    Обновления прежних проектов:

    Ниже подробнее о каждом проекте.

    ansible-role-zsh

    • Фича года: Powerlevel10k Instant Prompt. Теперь терминал открывается мгновенно, а плагины подгружаются фоном.
    • Сменил для всех Powerlevel9k на Powerlevel10k.
    • Исправил древний глюк, из-за которого при применении роли ansible иногда зависал навсегда.

    windows-mqtt

    • Иконка в трей: теперь это полноценное приложение, а не окно с терминалом
    • audio: возможность озвучить текст на хосте
    • exec: возможность запускать программы на хосте через MQTT, где запущен сервис. С озвучкой окончания работы
    • midi: использование любого MIDI устройства как контроллера чего угодно (exec/mqtt)
    • keys: нажимание кнопок через MQTT
    • mouse: клики мышью
    • tts: возможность озвучить текст на хосте
    • notify: отображение системного уведомления
    • windows: раскладывание окон по мониторам и вирт. раб. столам

    yandex-speechkit-talk-recognition

    Проект для распознавания аудиозаписей любой длины через Яндекс.SpeechKit.

    site-audit-seo

    • Добавлена плагинная система, чтобы можно было добавлять действия после сканирования каждой страницы и всего сайта в виде отдельных npm пакетов. Это используется, например, чтобы отправлять данные в InfluxDB и выводить на Grafana, так можно отслеживать PageSpeed страницы во времени

    site-audit-seo-viewer

    • Добавлены пресеты, чтобы генерировать отчёт сразу с нужными полями, раньше надо было их накликивать после сканирования
    • Добавлена ссылка “Пересканировать”, чтобы из отчёта получить сразу обновлённый отчёт, с теми же параметрами сканирования
    • В сводку добавлена разбивка по группам, чтобы считать не среднее по всему сайту, а показывать более точно:
    • Детали одной страницы получили оглавление и более понятный дизайн
    • Появилась история сканирований, чтобы можно было быстро пересканировать нужный сайт

    Это всё было весной, я пытался довести проект до состояния, чтобы коллеги смогли делать им аудиты сайтов без меня. Не вышло, сейчас проект сканера никем не используется. Незаслуженно брошенный проект, надеюсь ещё вернусь к нему.

    Часть проекта для просмотра отчётов я использую, получилась универсальная смотрелка json-ов в определённом формате. Если сохранять правильный json, потом можно вывести его в виде интерактивной таблицы, с сортировками, фильтрами и т.п.

    yandex-metrika

    Появились быстрые ссылки на отчёты за неделю, месяц, год. В отличие от обычного отчёта за год в Метрике этот выравнивает недели, чтобы было ровно с понедельника до воскресенья, чтобы по краям не было ложных провалов.

    Проект теперь используется в 2 компаниях, и я перестал его выкладыать в открытый доступ, т.к. не дошли руки привести к общему знаменателю.

    userscript-yandex-metrika-screenshot

    Для аудитов сайтов надо постоянно скриншотить Метрику. Этот юзерскрипт прибирает страницу, чтобы можно было сделать компактный скриншот, на котором будет всё нужное и не будет ненужного.

    activity-table

    Интерфейс для таблицы активности: CLI, MQTT, экспорт в json.

    activity-table-ui

    Интерфейс для таблицы активностей: календарь, графики.

    userscript-redmine-delo

    Стилизация таск-трекера RedMine: убраны лишние поля, подсвечены главные.

    , теги: github projects nodejs mqtt tinkoff planfix javascript vue

    Новее: Навигатор