GitHub digest #13: есть вопросы и опросы
Научим вас квадратно дышать и любоваться QR-кодами.


Иллюстрация: Оля Ежак для Skillbox Media
В этом дайджесте предлагаем вашему вниманию утилиты и инструменты для решения важных, но не самых распространённых задач, за исключением, пожалуй, дыхания.
Взрыв мозга
Brainfuck Enterprise Solutions — коллекция проектов на эзотерическом языке программирования Brainfuck, синтаксис которого включает в себя комбинации из знаков препинания и математических символов. Энтузиасты настолько вдохновились Brainfuck, что написали на нём операционную систему, текстовый редактор и библиотеку для работы со строками.
Помимо этого, авторы проекта разработали гайдлайны для оформления кода. Всё выглядит настолько серьёзно, что не сразу понимаешь, что программисты шутят.
Открыть репозиторийЧтобы тайное не стало явным
Git-secrets — простая утилита, которая следит за тем, чтобы ваши пароли и ключи доступа к сервисам случайно не стали опенсорсом. Для работы с утилитой сперва надо настроить шаблон с запретами. После этого утилита будет проверять каждый коммит перед публикацией в открытом репозитории GitHub. Если что-то совпадёт с одним из запретов, то Git-secrets не даст это опубликовать.
Открыть репозиторий
Читайте также:
Найдётся всё
Sourcebot — это инструмент для быстрого поиска по кодовой базе. Приложение работает на базе поисковой системы Zoekt, поэтому ключевые запросы моментально находятся даже в коде больших проектов. А ещё можно настроить поиск сразу по нескольким репозиториям, которые опубликованы в разных сервисах, например в GitHub, GitLab и Gitea.

Скриншот: Sourcebot / GitHub
Ко всему этому прилагается элегантный интерфейс с подсветкой синтаксиса, поддержкой тёмной темы и навигацией в стиле Vim.
Открыть репозиторийСайт в EPUB
Epublifier — браузерное расширение, которое конвертирует веб-страницы в EPUB-документ. Инструмент работает не со всеми сайтами. Пока поддерживаются Novel Updates, Wuxiaworld и большая часть сайтов Awesome Read the Docs.
Расширение Epublifier доступно для браузеров на базе Chromium и для Firefox.
Открыть репозиторийЕсть тема
Textfox — минималистичная тема для браузера Firefox, которая понравится любителям текстовых интерфейсов. Разработчики отмечают, что вдохновились проектом Spotify TUI — терминальной версией стримингового сервиса — и решили перенести её дизайн в Firefox.
Пользователи Textfox могут настроить цветовую схему и выбрать подходящие иконки. Кроме того, тема поддерживает вертикальное отображение списка открытых вкладок.

Скриншот: adriankarlen / GitHub
Всё для опросов
Formbricks — платформа с открытым исходным кодом для организации онлайн-опросов. Она предоставляет доступ к формам и инструментам для сбора обратной связи. Например, с помощью Formbricks можно создать онлайн-тест или анкету для опроса клиентов.

Скриншот: Formbricks / Skillbox Media
Formbricks может заменить Google Forms, Typeform или любой другой сервис для опросов.
Открыть репозиторийGit-статистика
Git quick statistics — простая утилита для получения статистики из любого Git-репозитория. Можно узнать общее количество коммитов, имена контрибьюторов, количество файлов и историю изменений. Также данные можно отсортировать, например, по времени, авторам и другим параметрам.

Скриншот: git-quick-stats.sh / Skillbox Media
Программа для людей с деньгами
Maybe — целая операционная система для учёта, анализа и управления личными финансами. У проекта интересная история. Он зародился как стартап в 2021 году, но не взлетел. В середине 2023 года проект закрыли. На создание приложения к тому моменту разработчики потратили около миллиона долларов.

Скриншот: Maybe
Через некоторое время разработчики решили, что их продукт не должен пропадать зря, поэтому открыли код приложения. Теперь все желающие могут развернуть Maybe самостоятельно. В будущем разработчики планируют сделать веб-версию с синхронизацией данных и предоставлять доступ к ней по подписке.
А ещё на сайте проекта есть большая подборка статей об управлении личными финансами.
Открыть репозиторийQR-код — во-первых, это красиво!
QRframe — генератор QR-кодов на JavaScript. Утилита может генерировать коды в SVG или сразу рендерить их в HTML. Автор проекта уделил много внимания дизайну QR-кодов, поэтому приложение генерирует настоящие произведения искусства, а не скучные чёрно-белые коды. У этого есть и обратная сторона: не каждый код получится корректно отсканировать.

Скриншот: QRframe / Skillbox Media
Антипрокрастинатор
Ultrafocus — терминальное приложение, которое поможет меньше отвлекаться от работы на проверку чатов и социальных сетей. Для начала работы с утилитой надо просто настроить список запрещённых сайтов и запустить приложение с помощью команды sudo ultrafocus.

Скриншот: plutov / GitHub
Приложение написано на Go и работает с Windows, macOS и Linux. Утилита поставляется с чёрным списком по умолчанию, в котором есть все основные социальные сети, новостные порталы и игровые площадки. При желании список можно расширить.
Инструмент можно использовать как средство борьбы с прокрастинацией или утилиту для организации родительского контроля. Ребёнок точно не догадается, как открыть терминал и остановить приложение. А если догадается, то перед вами определённо компьютерный гений.
Открыть репозиторий«Тетрис» на SQL
Tetris-SQL — имплементация классической игры «Тетрис» на языке запросов PL/pgSQL. Поддерживается управление с помощью стрелок и клавиш W, A, S, D. В репозитории есть инструкция для запуска игры на своём компьютере.

Изображение: Nuno Faria / GitHub
Швейцарский нож для скрейпинга
Pipet — это инструмент командной строки для извлечения данных с сайтов. Он поддерживает три режима работы: парсинг HTML, парсинг JSON и выполнение JavaScript-кода на стороне клиента. Например, Pipet можно использовать для поиска товаров со скидками, отслеживания свободных слотов в онлайн-очереди, получения актуальных биржевых котировок или автоматического сбора любой другой полезной информации в интернете.
Открыть репозиторийДля любителей успокаивающей музыки
Lowfi — терминальное приложение, созданное с единственной целью — воспроизводить музыку в жанре lo-fi. Это лёгкая фоновая музыка, которая стала популярна благодаря «вечной» трансляции на ютуб-канале Lofi Girl. Утилита воспроизводит треки из библиотеки именного этого канала.
Приложение Lowfi написано на Rust и работает на Windows, macOS и Linux. Чтобы начать слушать музыку, надо просто ввести в терминале команду lowfi. В приложении нет рекламы и подписок, а все треки разработчики добавили с соблюдением авторского права.
Ещё один приятный плюс: если вдруг пропадёт интернет, то музыка не перестанет играть. Приложение заранее скачивает пять треков про запас, а после воспроизведения удаляет их.
Открыть репозиторийДышите, не дышите
Calm Garden — утилита для дыхательных упражнений с интерфейсом командной строки. Открываете терминал, запускаете приложение и расслабляетесь. Можно настроить продолжительность и отслеживать прогресс. В приложении есть виртуальный сад, который начинает цвести, если заниматься регулярно.

Скриншот: Jaroslaw Weber / GitHub
Calm Garden предлагает следующие дыхательные упражнения:
- Квадратное дыхание: вдох, задержка, выдох и снова задержка. Каждое действие следует выполнять в течение четырёх секунд.
- Физиологический вздох: два быстрых вдоха и более продолжительный выдох. Говорят, эта техника хорошо снимает стресс.
- Пранаяма (4 — 7 — 8): вдох в течение четырёх секунд, задержка на семь секунд и выдох на восемь секунд. Это упражнение пришло из йоги.
- Когерентное дыхание, или медленное контролируемое дыхание с одинаковой продолжительностью вдоха и выдоха без задержки между ними.
Вопросы работодателю
Questions for potential employers — репозиторий, в котором собраны вопросы, которые следует задать работодателю во время собеседования. Это поможет выяснить, какие условия труда вас ждут на самом деле и как в компании устроены процессы. Вот некоторые вопросы из репозитория:
- Как у вас устроен онбординг? Насколько чётко прописан процесс, прикрепят ли ко мне отдельного сотрудника, который будет помогать?
- Что от меня ждут в первые 60–90 дней работы?
- Какие сотрудники добиваются успеха в вашей компании? Какой тип людей не справляется?
- Сколько уровней менеджеров или руководителей компании нужно пройти, чтобы получить одобрение новой идеи?
Удобный инструмент для Docker
Lazydocker — минималистичный терминальный пользовательский интерфейс для Docker и Docker Compose. Приложение написано на языке Go с использованием библиотеки Gocui.

Изображение: jesseduffield / GitHub

Читайте также:
Резюме настоящего разраба
JSON Resume — проект, который поможет создать резюме на базе популярного формата JSON. Надо просто заполнить поля с информацией о себе и своём опыте, а утилита сгенерирует готовый документ, который можно отправить в компанию мечты.
Открыть репозиторий
Читайте также:
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!