Инструменты программиста – Telegram
Инструменты программиста
13.5K subscribers
1.56K photos
148 videos
4 files
1.85K links
Полезные инструменты для программистов — бесплатные и платные

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Регистрация в перечне РКН: https://tprg.ru/mX0S
Download Telegram
Every PDF — локальный редактор PDF без подписок, рекламы и отправки файлов на сервер. Автор устал от выбора: платить Adobe за простые задачи или заливать контракты и финансовые документы на «бесплатные» онлайн-сервисы непонятно кому. Сделал своё решение — всё работает локально, файлы никуда не уходят .

Что умеет
🔘Редактор: добавление текста, изображений, чекбоксов
🔘Подписи: рисуешь или загружаешь картинку
🔘Merge/Split: объединение и разбивка по страницам
🔘Конвертация в/из PDF
🔘Водяные знаки (текст или картинка)
🔘Поворот, перестановка страниц
🔘Шифрование/дешифрование паролем

Стек: Nextron (Next.js + Electron) + Python/FastAPI. Работает на Windows и macOS, лицензия MIT.

📎 Код на GitHub, скачать можно на странице с релизами, на видео демо

@prog_tools
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
7👎1
The-One-File — сетевые диаграммы в одном HTML-файле. Открывается в любом браузере, работает полностью офлайн. Подходит для air-gapped окружений, документации, мониторинга статуса — от корпоративных сетей до домашних лабов.

Фичи
🔘Ортогональная маршрутизация линий
🔘Анимация потоков данных
🔘Камерные конусы (для визуализации видеонаблюдения)
🔘Кастомные иконки
🔘Live status monitoring
🔘Стены, темы, настройки отображения
🔘Экспорт диаграммы — сохраняется прямо в тот же HTML

Зачем
Для документации сетей, которую можно открыть где угодно без интернета и зависимостей. Один файл — вся диаграмма внутри. Удобно для передачи коллегам, хранения в git, работы в изолированных средах.

📎 Проект на GitHub, 33 релиза, последний буквально на днях, так что проект живой. На видео демо

@prog_tools
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52
OnlineDevTools — набор инструментов для разработчиков прямо в браузере. Всё работает локально на странице — данные никуда не отправляются. Без регистрации, бесплатно, open source.

Какие инструменты
🔘Форматирование и минификация: JSON, HTML, YAML, CSS
🔘Конвертеры: YAML ↔️ JSON, HTML → Markdown, HTML → Plain Text
🔘Encoding/Decoding: Base64, URL, HTML entities
🔘Генератор фейковых данных для тестов
🔘HTML-превью и WYSIWYG-редактор
🔘Для текста: подсчёт символов, ИИ-токенов, сравнение, регэкспы
... и ещё куча всякого
​​
Написано на Vite + React + TypeScript + Tailwind + shadcn-ui. Можно форкнуть и запустить локально.

📎 Код на GitHub, пользоваться можно на сайте

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
👍65❤‍🔥3
iceoryx2 v0.8 — zero-copy IPC с латентностью <100 наносекунд

Eclipse выпустили новую версию iceoryx2 — middleware для межпроцессного взаимодействия без копирования данных.

➡️ Что это

Библиотека для сверхбыстрой коммуникации между процессами. Вместо копирования данных через сокеты — shared memory + lock-free очереди. Отправляешь 100MB в 10 процессов? Данные пишутся один раз, остальным летит только 8-байтный указатель.

➡️ Что нового в v0.8

🔘C# bindings — теперь Rust, C++, C, Python и C#
🔘no_std + bare metal — можно запускать без ОС
🔘Blackboard pattern для Python — key-value хранилище между процессами
🔘Поддержка Android (proof of concept)
🔘Bazel bzlmod support

➡️ Поддерживаются паттерны

Publish/Subscribe
Request/Response
Events
Pipeline (в планах)
Blackboard (в процессе)

➡️ Платформы

Linux, macOS, Windows, FreeBSD, QNX 7.1/8.0, VxWorks (PoC), Android (PoC)

📎 Код на GitHub, документация на сайте, на картинке сравнение задержки для разных инструментов/библиотек

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
53
ButtFish — proof of concept самой безумной теории о читерстве в шахматах

В 2022 году Магнус Карлсен проиграл матч, после чего вышел из турнира и выложил мем «I prefer not to speak». Шахматное сообщество восприняло это как обвинение в читерстве. Началась охота на ведьм и генерация теорий — включая самую дикую: что ходы передавались через... вибрирующее устройство.

➡️ Что сделал разработчик

Реализовал эту теорию. ButtFish подключается к шахматному движку (Stockfish/Leela), получает лучший ход, кодирует его в азбуку Морзе и отправляет на подключённое устройство.

➡️ Поддерживаемые устройства:
🔘Лампы Yeelight (мигают)
🔘Любые девайсы через библиотеку Buttplug.io

Да, Buttplug.io — это реальная open-source библиотека для управления определённой категорией устройств. Список совместимых девайсов впечатляет.

➡️ Зачем это существует

Автор нарисовал диаграмму Венна: пересечение множеств «играют в шахматы», «умеет программировать» и «нравятся шутки про задницу». Решил, что избранный может никогда не появиться, поэтому взял дело в свои руки.

⚡️ Проект попал на главную VICE — рядом с новостью о миссии NASA DART. Хикару Накамура (5-кратный чемпион США) читал статью на стриме.

📎 Код на GitHub, на видео демо работы

P.S. Автор кода подчёркивает: это мем. Не надо так делать на турнирах.

P.P.S. Автору этого поста всё равно. Делайте так и без турниров, если хотите.

@prog_tools
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5🌚1
epicgames-freegames-node — автосбор бесплатных игр из Epic Games Store, вы знали, что такое существует?

Каждую неделю Epic раздаёт игры бесплатно, но нужно заходить и забирать вручную. Этот инструмент делает это автоматически.

Как работает
🔘Запускается по расписанию (cron)
🔘Логинится в аккаунт, находит текущие бесплатные игры
🔘Отправляет уведомление со ссылкой на чекаут (Discord, Telegram, email)
🔘Из-за капчи полностью автоматический клейм невозможен — нужен один клик

Docker-образ готов:
services:
epicgames:
image: charlocharlie/epicgames-freegames:latest
ports:
- 3000:3000
volumes:
- ./config:/usr/app/config


➡️ Альтернатива: free-games-claimer — забирает игры ещё и с Amazon Prime Gaming и GOG.

📎 GitHub, Docker Hub

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥81👎1
Если вы тестируете API, скорее всего используете Postman. Он мощный, но тяжёлый — отдельное приложение, долго грузится, требует регистрации для синхронизации.

Thunder Client — расширение для VS Code, которое делает то же самое, но легче и быстрее. Устанавливается за секунду, работает прямо в редакторе.

Что умеет:
🔘 Отправлять GET/POST/PUT/DELETE запросы
🔘 Сохранять коллекции запросов
🔘 Переменные окружения (dev/staging/prod)
🔘 Импорт из Postman

📎 Проект на GitHub, доки

Альтернативы:
REST Client (ещё проще, запросы пишутся в .http файлах)
HTTPie (CLI-инструмент для терминала)

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👎1
Терминальные редакторы живут где-то между «слишком просто» (nano) и «нужна неделя на изучение» (vim). PNANA пытается занять золотую середину — взять простоту nano, современный UI от micro и продуктивные фичи Sublime.

Выложили буквально на днях. По сути это TUI-редактор на C++17 с использованием библиотеки FTXUI. Идея в том, чтобы можно было просто открыть и работать, без изучения мануалов. При этом есть поддержка tree-sitter для подсветки синтаксиса. FTXUI под капотом даёт кроссплатформенность, поддержку UTF-8, мыши и анимаций.

Как запустить
git clone https://github.com/Cyxuan0311/PNANA.git
cd PNANA
# сборка через CMake (нужен компилятор с поддержкой C++17)

Бинарных релизов пока нет, нужно собирать из исходников.

📎 Код на GitHub, на видео демо

@prog_tools
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Представьте: строил вы свой сервер, дашборды красивые, открываете htop — а RAM простаивает, есть ещё свободные мегабайты. Непорядок! Автор решил эту проблему и написал Hypermind — P2P-счётчик, который показывает, сколько людей прямо сейчас тратят 50 МБ RAM на запуск этого контейнера.

➡️ Как запустить
docker run -d \
--name hypermind \
--network host \
--restart unless-stopped \
ghcr.io/lklynet/hypermind:latest

--network host нужен для NAT traversal — без него P2P не работает, а на localhost:3000 крутится визуализация с частицами — каждая нода = одна точка.

После релиза:
🔘За сутки установили почти 100 000 нод
🔘Кто-то нашёл уязвимость — можно было спамить heartbeats и крашить UI всем участникам через перегрузку частиц
🔘Автор в панике фиксил баги, забив на основную работу
🔘Уже появилась интеграция для Home Assistant
🔘Добавили P2P-чат между нодами

Зачем это нужно
:
Незачем. В этом и суть. Но если хочется потрогать DHT руками, посмотреть как работает P2P discovery или просто поддержать коллективное безумие — welcome.
«Если не используешь RAM — потеряешь её» — автор проекта


📎 Код на GitHub, на картинке состояние на момент написания этого поста

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣62😱1
Знакомо: создаёшь новый репозиторий, нужна лицензия. Идёшь на choosealicense.com, копируешь текст, вставляешь, правишь год и имя. lic делает это одной командой в терминале.

Не бог весть какое улучшение, но приятно же.

➡️ Как работает

Запускаешь lic, выбираешь лицензию из TUI-меню, вводишь имя и год — готово. Файл LICENSE создаётся в текущей директории. Данные берутся из официальной базы лицензий GitHub.

# Установка
brew install kushvinth/tap/lic # macOS/Linux
pip install lic-cli


Проект свежий (вышел в конце декабря), но уже набрал 21 звёздe и попал в Homebrew.

📎 Код на GitHub, на видео демо

@prog_tools
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👏4
Вышла версия 2.0 Pocket ID — это OIDC-провайдер, который работает только на passkeys. Никаких паролей. Добавил passkey через Bitwarden или Touch ID — логинишься в свои сервисы одним касанием. Проще Keycloak и Authentik на порядок.

Лично мне так понравилась идея, что в текущем проекта первёл на Pocket ID админку. Обычным юзера я думаю может не очень зайдёт концепция «у нас совсем нет паролей», а вот для себя очень удобно.

➡️ Что нового в 2.0

Добавили SCIM Provisioning — автоматическое создание и удаление пользователей. Пока не все сервисы поддерживают, но штука перспективная. Второе — нормальный экспорт и импорт данных через CLI. Есть breaking changes, перед апгрейдом стоит глянуть гайд по миграции.

➡️ Как работает

Подключаешь Pocket ID к Synology, Portainer, Grafana — везде логинишься через passkey. Один тап на телефоне или посмотреть в камеру. В комментариях просят добавить proxy-режим для сервисов без встроенного OIDC. Пока нужен oauth2-proxy, но разработчик отвечает и активно пилит проект, что радует.

➡️ Запуск

Docker-compose, пара переменных окружения. Первый вход на /login/setup — создаёшь админа с passkey, URL закрывается автоматически.

📎 Код на GitHub, на скрине пример формы логина

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
LLM-Shield — прокси между вашим приложением и LLM-провайдером для защиты персональных данных. Маскирует персональные данные перед отправкой в OpenAI, Azure и другие API. Или перенаправляет чувствительные запросы на локальную модель.

➡️ Как работает

Два режима:

1️⃣Mask Mode — находит в запросе перс. данные (имена, email, телефоны, адреса), заменяет на плейсхолдеры, отправляет в облачный API, в ответе подставляет обратно реальные данные.

3️⃣Route Mode — если запрос содержит чувствительные данные, перенаправляет его на локальную LLM вместо облака и данные не покидают инфраструктуру.

Установка
git clone https://github.com/sgasser/llm-shield
cd llm-shield
cp config.yaml config
docker compose up -d


Направляете приложение на http://localhost:3000/openai/v1. Совместим с любым инструментом, использующим OpenAI API: Open WebUI, Cursor, собственные скрипты. Есть дашборд для мониторинга.

Поддерживает несколько языков для детекции перс. данных, включая русский.

📎 Код на GitHub, на картинке пример дашборда

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Свежая Python-библиотека для создания реалистичных траекторий курсора. Не прямые линии и не простые кривые Безье, а движения с overshoot, коррекциями, микрозадержками — как у живого человека.

Для ботов, тестирования UI, и автоматизации, которые сложно детектить, чтобы мышка двигалась более похоже на человека. Если добавить ещё периодические промахивания по мелким кнопкам будет совсем хорошо.

Установка
pip install pathgenerator
pip install pathgenerator[windows] # эмулятор для Windows
pip install pathgenerator[server] # веб-визуализация


Пример
from pathgenerator import PathGenerator, PathEmulator

emulator = PathEmulator()
gen = PathGenerator()

start_x, start_y = emulator.get_position()
path, *_ = gen.generate(start_x, start_y, 500, 500)

emulator.execute_path(path)


📎 Код на GitHub, доки на сайте, на видео демо

@prog_tools
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
MONICA — интерактивная надстройка над ffmpeg. Закидываешь файлы в папку /import, запускаешь, стрелками выбираешь что сделать (конвертнуть, вытащить аудио, ресайзнуть), результат появляется в /export.

Понятно, что сейчас команды ffmpeg можно просто у GPT спросить. Но тут идея в другом — если часто делаешь одни и те же операции, не надо каждый раз ничего вводить. Просто тыкаешь в меню и не тратишь токены.

Рецепты операций лежат в JSON, можно свои добавлять. Если ffmpeg не стоит — сама скачает. Работает пакетно, если накидать несколько файлов.

Установка по сути просто через клонирование репо и подтягивание зависимостей:
git clone https://github.com/yourusername/monica.git
d monica
pip install -r requirements.txt
python main.py


📎 Код на GitHub, при написании мог применяться ИИ, но сама тулза рабочая

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82🔥2
ShellCheck — линтер для bash/sh скриптов. 38k звёзд на GitHub, встроен в VS Code, интегрирован в CodeClimate и Codacy. Если пишете shell-скрипты и не используете — рекомендую.

Тулза ловит типичные ошибки: неэкранированные переменные, проблемы с пробелами в путях, deprecated синтаксис, потенциальные инъекции. Работает статически — не запускает скрипт, а парсит код.

Установка
brew install shellcheck  # macOS
apt install shellcheck # Ubuntu


В связке с ним — shfmt. Форматтер для shell, как gofmt для Go. ShellCheck находит проблемы, shfmt форматирует код. Вместе — идеальная пара для CI.

shfmt -l -w noscript.sh  # форматирует на месте


Альтернативы и дополнения

🔘shellharden — автоматически переписывает скрипты под ShellCheck
🔘bashate — линтер от OpenStack, но давно не обновлялся
​​🔘bash-language-server — автокомплит и go-to-definition в редакторе

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
332
PostDad — TUI-клиент для тестирования API, написанный на Rust. Альтернатива Postman, но прямо в терминале.

В свежей версии добавили поддержку WebSocket. Переключение режимов через Ctrl+W, можно подключаться к ws:// и wss:// эндпоинтам, отправлять сообщения в реальном времени и скроллить историю.

Зачем этот проект? Со слов автора:
Postman стал тяжёлым — electron, 500+ МБ RAM, обязательный аккаунт. PostDad — лёгкий TUI, работает в терминале, не требует регистрации. Для тех, кто живёт в консоли и не хочет открывать браузер ради одного GET-запроса.


Что умеет
🔘GET/POST/PUT/DELETE запросы
🔘WebSocket соединения
🔘Работа с headers и body
🔘Всё в TUI без GUI

Альтернативы в этой нише
🔘Bruno — десктоп, open source, хранит коллекции в git-friendly формате
🔘Hoppscotch — браузерный, лёгкий, self-hosted
🔘HTTPie — CLI, но без TUI

PostDad выделяется именно TUI-интерфейсом — интерактивно, но в терминале.

📎 Код на GitHub, установка cargo install PostDad

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
👍322
Kube9 — расширение VS Code для визуального управления Kubernetes-кластерами.

Вместо постоянного переключения на терминал для kubectl команд — дерево кластеров прямо в сайдбаре редактора. Просмотр логов, события подов, масштабирование воркоудов, рестарт деплойментов — всё по правому клику.

Фишка — Cluster Organizer: можно группировать контексты по папкам, задавать алиасы, организовывать кластеры как удобно. Есть интеграция с ArgoCD — статус синхронизации и drift detection без переключения в браузер.

Работает полностью локально через ваш kubeconfig, данные никуда не отправляются. MIT лицензия.

Установка: ищите Kube9 в VS Code Extensions

📎 GitHub

@prog_tools
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Разбираем плагины для кодинга с ИИ в VS Code

На Tproger вышла статья о том, чем заменить GitHub Copilot (и почему вообще есть запрос его менять).

Один из вариантов — open source плагины для VS Code по принципу BYOK (Bring Your Own Key). В статье разбирают три варианта — Continue, Cline и Kilo Code. Если коротко, то Continue — для минималистов, Cline — комбайн для работы, Kilo Code — полноценная среда для кодинга с ИИ.

А в самой статье можно узнать нюансы: как настроить любой из плагинов, в чем плюсы и минусы: https://tprg.ru/t1fZ
😁1
А потом ещё 10 реклам, чтобы разобраться с npm is not recognized as an internal or an external command
😁8