TGViewer
Channel Public Channel
Инструменты программиста

Инструменты программиста

@prog_tools

Полезные инструменты для программистов — бесплатные и платные

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

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

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

Регистрация в перечне РКН: https://tprg.ru/mX0S
Subscribers
12.9K
Photos
1.7K
Videos
158
Links
2.1K

Showing posts older than #2853 · Back to latest

Older Posts 20 shown
Post #2852 1.66K
Nibs: безопасный очиститель терминала для Linux

Nibs — TUI-утилита на Rust, которая освобождает место на диске, не рискуя удалить важные файлы. Она сканирует кеши, логи, старые сборки, установщики, корзину и остатки приложений, а перед очисткой помечает каждую находку как безопасную, требующую проверки или рискованную.

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

Инструмент пока в альфе, но уже открыт для тестирования. Репозиторий: github.com/danitsdev/nibs.
Post #2851 1.59K
Рутинные команды проекта расползаются по README, Makefile и памяти того, кто их когда-то придумал. just собирает их в один justfile: описываете рецепт, дальше зовёте just build или just test из любой папки проекта.

Версия 1.57.0 вышла 19 июля.

Что внутри:

🔘 появилась функция len() для подсчёта элементов списка, а split('') теперь разбивает строку на отдельные символы;
🔘 переменные из блока [env] стали видны внутри вызовов shell();
🔘 markdown-файл, заданный через --justfile-name, теперь тоже разбирается: рецепты вынимаются из блоков just, поэтому команды могут лежать прямо в README рядом с объяснением, зачем они нужны;
🔘 на Windows аргументы уходят в cmd.exe без экранирования;
🔘 запрещены дублирующиеся группы рецептов и одинаковые имена параметров у пользовательских функций;
🔘 ленивые присваивания перестали пересчитываться заново при каждом обращении внутри таких функций.

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

Язык: Rust. Лицензия: CC0-1.0.

@prog_tools
Post #2850 1.58K
Auto-CPUFreq 3.1: мониторинг CPU и настройки теперь в GUI

Auto-CPUFreq, Linux-утилита для мониторинга и настройки процессора, обновилась до 3.1. Главное новшество: режим мониторинга теперь доступен прямо в графическом интерфейсе, так что смотреть состояние CPU можно без терминала.

Версия также добавляет новые параметры конфигурации и ряд исправлений. Если вы уже пользуетесь инструментом, обновитесь, чтобы получить GUI для мониторинга и новые опции конфигурации в этом релизе.

Подробности о релизе.
Phoronix Auto-CPUFreq 3.1 Adds Monitoring Mode To GUI, New Configuration Options & Fixes Auto-CPUFreq is one of the open-source projects striving to be a CPU speed and power optimizer for Linux systems to improve battery life without making any real compromises to the user experience
  • 👍 4
Post #2849 1.77K
Несколько coding-агентов в одном рабочем дереве быстро начинают редактировать одни и те же файлы. Emdash разводит агентов по изолированным git worktree и собирает чат, терминал, задачи и pull request в одном локальном приложении.

Версия 1.1.40 вышла 17 июля. Что внутри:

🔘 в чат можно вставлять изображения;
🔘 появился быстрый переключатель Zen Mode;
🔘 у файлов в контекстном меню — команда Show in Finder, у pull request — копирование общего URL;
🔘 исправлена блокировка главного процесса при индексации файлов и падения при повторной подписке file watcher.

Пригодится тем, кто гоняет несколько агентов одновременно и устал следить, чтобы они не редактировали одни и те же файлы.

Язык: TypeScript. Лицензия: Apache-2.0.

@prog_tools
Post #2848 1.95K
RabbitMQ — брокер сообщений и потоков: AMQP, MQTT, STOMP и собственный Stream Protocol, очереди, кластеры и плагины управления. Патч 4.2.9 от 20 июля сосредоточен на надёжности кластера и безопасности.

Что внутри:

🔘 соли паролей переведены на криптографически безопасный генератор случайных чисел;
🔘 исправлено накопление слешей в путях classic queue index, из-за которого путь разрастался до ошибки enametoolong;
🔘 появились операции transfer_leadership для очередей и потоков, а rabbitmq-upgrade drain стал безопаснее;
🔘 при объявлении alternate exchange через AMQP 1.0 теперь корректно проверяются права;
🔘 минимальная поддерживаемая версия Erlang поднята до 27.0.

Пригодится тем, кто держит RabbitMQ в проде и планирует обновление кластера: здесь и исправления индексов очередей, и проверка прав, и штатная смена лидера.

Язык: Erlang/OTP. Лицензия: MPL-2.0.

@prog_tools
  • 👍 2
  • ❤ 1
Post #2847 1.93K
Flowork — self-hosted ИИ-стек из двух Go-бинарников

Flowork даёт готовый стек для агентов и LLM внутри вашей инфраструктуры: Flowork Agent управляет жизненным циклом агентов и задачами, а Flow Router направляет запросы к локальным или внешним моделям по вашим правилам.

Оба компонента — одиночные бинарники на Go без Docker-оркестрации и обязательных SaaS. Данные не покидают периметр, а вы платите за своё железо, а не за токены в чужом облаке.

Подходит для чувствительных данных и изолированных сред, но масштабирование, обновления и мониторинг остаются на вас.
Post #2846 1.75K
fzf — нечёткий поиск для терминала: файлы, история команд, процессы, любые списки через пайп. Версия 0.74.1 от 18 июля почти целиком посвящена рендерингу.

Что внутри:

🔘 каждый кадр теперь оборачивается в synchronized update mode — на поддерживающих терминалах пропадает мерцание;
🔘 объём вывода на отрисовку сократился на 10–23% за счёт пропуска избыточных SGR-последовательностей;
🔘 исправлены призрачные символы и смещённые цвета внутри Zellij и восстановление курсора при выходе в терминале Neovim;
🔘 к каждому релизу теперь прикладываются .deb-пакеты для Debian-дистрибутивов.

Из ветки 0.74 стоит знать главное: на tmux 3.7+ флаг --popup открывает fzf в плавающей панели вместо модального popup — её можно двигать мышью, зумить и переключаться на другие панели, пока fzf работает.

Пригодится тем, кто живёт в терминале и запускает fzf сотни раз в день.

Язык: Go. Лицензия: MIT.

@prog_tools
  • 👍 1
Post #2845 1.93K
Deno — среда для JavaScript и TypeScript, которая запускает код, управляет зависимостями, тестирует, форматирует и собирает приложения одним CLI.

Версия 2.9.2 развивает экспериментальный deno desktop: веб-приложение можно упаковать в самостоятельную настольную программу с интерфейсом в системном webview. Инструмент теперь распознаёт React Router, включает HMR для Vite и Nuxt и запускает обновление через dev-сервер выбранного фреймворка.

В обновление также вошли:

🔘 прозрачность и управление непрозрачностью окон;
🔘 запуск framework build перед упаковкой desktop-приложения;
🔘 вывод ошибок старта собранной программы;
🔘 запуск инспектора сигналом SIGUSR1;
🔘 корректный подсчёт веток в отчётах покрытия;
🔘 форматирование inline-скриптов Astro как TypeScript;
🔘 пути для fmt, lint и bench в watch-режиме.

Разработчики также ускорили Web Streams, передачу сообщений между workers и работу TLS-потоков, сократив лишние копирования буферов.

deno desktop пока считается экспериментальной функцией, поэтому формат и API ещё могут измениться. Остальные исправления входят в стабильный релиз 2.9.2.

Язык: Rust и TypeScript
Лицензия: MIT

@prog_tools
  • ❤ 1
  • 👍 1
Post #2844 1.96K
mise — менеджер рабочего окружения разработчика. Он хранит версии Python, Node.js, Rust и других инструментов, переменные среды и команды проекта в одном mise.toml, чтобы одинаково настраивать проект на разных компьютерах и в CI.

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

В релиз также вошли:

🔘 отдельный стиль вывода для задач;
🔘 установка Flatpak-пакетов через Linux bootstrap;
🔘 воспроизводимые OCI-слои из локальных файлов;
🔘 диагностика программ, которые перекрывают shims mise в PATH;
🔘 доступ Aqua backend к приватным архивам GitHub через авторизованный API.

При обновлении стоит проверить CI: --quiet теперь сохраняет выбранный стиль вывода, а служебные переменные usage_* живут только внутри текущего запуска.

Язык: Rust
Лицензия: MIT

@prog_tools
  • 👍 3
  • 🔥 1
Post #2843 1.87K
eza 0.23.5: современный ls научился считать строки кода

eza расширяет возможности ls: показывает Git-статусы, дерево каталогов, иконки и метаданные файлов прямо в терминале.

В версии 0.23.5 завершили многолетний перенос командной строки на clap и добавили подсчёт строк кода с итоговой сводкой. В тесте авторов обход 635 ГБ исходников занял 4,5 минуты.

В релиз также вошли:

🔘 --hyperlink=auto для ссылок в совместимых терминалах;
🔘 --short-nix для компактных путей Nix;
🔘 сводка по строкам и CSV-иконка;
🔘 обновлённые зависимости и новая минимальная версия Rust.

Язык: Rust
Лицензия: EUPL-1.2

@prog_tools
  • 👍 1
Post #2842 1.72K
Любите игры на концентрацию и внимание?

Тогда «Меморина» — то что надо! Найдите все пары как можно быстрее и откройте все ачивки в нашей игре
Post #2841 1.7K
Nushell 0.114.1: точнее проверяет типы прямо во время работы

Nushell — командная оболочка со структурированными данными. Её пайпы передают таблицы, записи и типизированные значения. JSON и CSV можно фильтровать командами оболочки без ручного разбора текста.

Версия 0.114.1 стабилизирует runtime annotations, которые недавно включили по умолчанию.

В патч вошли:

🔘 точные позиции ошибок при несовпадении типов;
🔘 исправленные типы closures, команд дат, uname и input listen;
🔘 корректная передача именованных флагов через run script.nu;
🔘 возможность отключить проверки аннотаций для старых скриптов.

Язык: Rust
Лицензия: MIT

@prog_tools
  • ❤ 1
  • 👍 1
  • 🤔 1
Post #2840 11.6K
Нейросети удобно оценивают код, но нестабильны: один и тот же Go-файл может получить разные вердикты в разных прогонах

Repowise делает эту работу детерминированно — он анализирует здоровье Go-кода по синтаксическому дереву и истории коммитов.

Инструмент строит 23 показателя качества на парсере Tree-sitter и git-истории. Один и тот же коммит всегда даёт одну и ту же оценку, поэтому результат можно сравнивать между версиями без шума.

В отличие от универсальных метрик объектно-ориентированного кода, Repowise учитывает специфику Go: вложенность функций, дублирование, покрытие тестами и процессные сигналы — например, частую смену авторов одного файла. Для крупных репозиториев вроде Hugo это даёт стабильную картину рисков.

Если в проекте важна воспроизводимость оценок, такой подход поможет отслеживать деградацию и не гадать на нейросетях. Подробности о метриках в статье.
  • 👍 3
  • 😁 1
Post #2839 1.65K
Atuin: история команд, в которой видно начало и конец длинной строки

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

В версии 18.17.1 длинные команды в TUI обрезаются посередине. На экране остаются начало команды и последние аргументы.

Заодно исправили:

🔘 порядок импорта истории из zsh и Nushell;
🔘 поиск по префиксу;
🔘 подключение собственных API-адресов к ИИ-функциям;
🔘 документацию по захвату вывода и MCP.

Язык: Rust
Лицензия: MIT

@prog_tools
  • 👍 2
  • ❤ 1
Post #2838 4.54K
Ghost: Postgres, который можно форкнуть под каждую задачу агента

Ghost — хостинг Postgres, который можно запустить, форкнуть и выбросить за секунды. Он даёт каждому агенту или задаче отдельную базу, чтобы эксперименты не трогали продакшн.

Установка: curl -fsSL https://install.ghost.build | sh. Дальше CLI и интеграция для ИИ-агентов (MCP): можно скопировать продакшн-базу в изолированную копию перед миграцией или генерацией кода. Если агент что-то сломает, удаляете окружение и берёте следующее.

Жёсткие лимиты расходов не дают счёту уйти в бесконечность. Подробнее про Ghost.
Post #2837 1.76K
cpulse — терминальный дашборд, который показывает, почему завис docker compose up

Compose сваливает логи всех контейнеров в один поток: когда стек не поднимается, приходится угадывать, какой сервис всё блокирует, и листать тысячи строк. cpulse рисует граф depends_on деревом, следит за контейнерами в реальном времени и прямо называет корневую причину.

Что внутри:
🔘 у каждого сервиса осмысленное состояние (blocked, starting, degraded при трёх и более рестартах), вычисленное из состояния контейнера, exit-кода и графа зависимостей;
🔘 режим cpulse doctor без TUI: печатает корневую причину и находки, при критичных выходит с кодом 1 — встраивается в CI;
🔘 вкладки по сервису: логи, спарклайны CPU и памяти, зависимости, healthcheck с запуском probe прямо из интерфейса;
🔘 по проекту целиком: таймлайн запуска диаграммой Ганта, граф с условиями на рёбрах, диагностика;
🔘 авто-обнаружение всех контейнеров локального демона — новые стеки появляются без перезапуска;
🔘 init-контейнер, завершившийся с exit 0, визуально отличается от упавшего; раньше это выяснялось только чтением логов.

Проект молодой: первый релиз 26 июня, к 13 июля уже v0.4.1. Ставится через brew или бинарником из релизов.

Пригодится тем, кто гоняет многосервисные compose-стеки и устал выяснять, какой из контейнеров держит остальные.

https://github.com/hyturing/compose-pulse

Язык: Go. Лицензия: MIT.

@prog_tools
  • 🙏 1
Post #2836 4.34K
FixCSS: пишите CSS без исторических ошибок спецификации

FixCSS берёт исправленные имена свойств, значения и селекторы — и на лету превращает их в валидный CSS, который браузеры уже понимают. Например, white-space: no-wrap он сконвертирует в white-space: nowrap.

Библиотека опирается на опубликованный CSS Working Group список ошибок в дизайне CSS и убирает необходимость помнить, какие имена свойств появились только из-за обратной совместимости. Демо на CodePen и установка через NPM.

Где пригодится: можно писать CSS так, как он выглядел бы без компромиссов, а FixCSS позаботится о финальном выводе для продакшена.
  • 👍 1
  • 😭 1
Post #2835 1.56K
Разбор на Tproger: где пет-проект перестаёт быть кодом и начинает быть бизнесом. Внутри — про разницу между «ищу рынок под свой стек» и «решаю чужую проблему», про предпринимателя и менеджера как разные профессии, и про то, что продукт — артефакт, а бизнес — система, которая производит его без вас.

https://tproger.ru/articles/pochemu-vaw-pet-proekt-eshhyo-ne-biznes-a-vy-ne-predprinimatel

@prog_tools
Post #2834 1.59K

Forwarded from Zen of Python

Репозиторий python-patterns: каталог паттернов, которые стоит выбирать с умом

В python-patterns собраны классические паттерны и идиомы Python — 42,8k звёзд, 7k форков и 896 коммитов. Сообщество использует его как шпаргалку, чтобы быстро вспомнить, как выглядит тот или иной подход в коде.

Авторы явно предупреждают: каждый паттерн несёт свои компромиссы, а выбирать нужно не по красоте реализации, а по ситуации. В Python это особенно актуально — язык сам даёт идиомы, от итераторов до менеджеров контекста, и часто проще использовать встроенное, чем городить фабрику.

Полезно сохранить на тот момент, когда вам хочется применить паттерн ради паттерна. Иногда достаточно обычной функции.
  • 👍 1
  • 👏 1
Post #2833 1.54K

Forwarded from Zen of Python

GameDev: разработка игр 80% корпоративных программ геймификации ломаются на одном и том же месте По данным AmplifAI, игровые кампании дают в среднем вовлечённость на 100–150% выше, чем классические подходы, а геймифицированный контент шерится в 12 раз чаще. При этом примерно 80%…
  • 🌭 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →