Files
compress/scripts/release-body.md
Dmitriy Fofanov eee9a4a093 Добавлены скрипты сборки для кроссплатформенных двоичных файлов и лицензия GPL.
- Добавлен файл LICENSE с лицензией GNU General Public License версии 3.0.
- Создан скрипт PowerShell (build-all.ps1) для сборки двоичных файлов Windows и Linux из Windows с использованием кросс-компиляции.
- Разработан скрипт сборки Linux (build-linux.sh) для сборки двоичных файлов Linux.
- Реализован скрипт PowerShell (build-windows.ps1) для сборки двоичных файлов Windows.
- Каждый скрипт сборки включает упаковку и генерацию контрольной суммы SHA256 для двоичных файлов.
2025-11-05 13:05:49 +03:00

4.7 KiB
Raw Blame History

Universal File Compress {{VERSION}}

Высокопроизводительный инструмент на Go для массового сжатия PDF и изображений (JPEG/PNG) с удобным TUI-интерфейсом, гибкой конфигурацией и модульной архитектурой.

Ключевые возможности

Сжатие файлов:

  • 📄 PDF — два алгоритма на выбор: PDFCPU (скорость) и UniPDF (качество)
  • 🖼️ Изображения — JPEG (1050% качество), PNG (адаптивная оптимизация)
  • 🔄 Интеллектуальное сжатие — автоматический выбор оригинала при неэффективном сжатии

Производительность и обработка:

  • 🚀 Параллельная обработка с настраиваемым количеством воркеров
  • 📁 Рекурсивное сканирование с сохранением структуры папок
  • Пакетная обработка больших коллекций файлов
  • 🔁 Повторы при ошибках (retry) и таймауты

Интерфейс и управление:

  • 🎨 TUI (Text User Interface) — настройка, запуск и мониторинг прогресса
  • ⚙️ YAML конфигурация — гибкое управление параметрами сжатия
  • 📊 Детальное логирование в файл и консоль с ротацией
  • 🔧 Clean Architecture — расширяемая модульная структура

🆕 Что нового в этом релизе

  • Реализован выбор между алгоритмами PDFCPU и UniPDF для PDF
  • Добавлена поддержка сжатия изображений (JPEG, PNG)
  • Улучшен TUI с прогресс-индикатором и статистикой обработки
  • Оптимизирована параллельная обработка больших файлов
  • Добавлена атомарная замена файлов с резервным копированием
  • Расширена конфигурация через YAML-файлы

📦 Установка и запуск

Быстрая установка

  1. Скачайте архив для вашей операционной системы
  2. Распакуйте в желаемую папку
  3. Запустите исполняемый файл

Системные требования

  • Операционная система: Windows 10+, Linux, macOS 10.14+
  • Свободное место на диске: минимум 50 МБ
  • Оперативная память: рекомендуется 512 МБ

💻 Поддерживаемые платформы

Платформа Архитектура Файл для скачивания
Windows x64 (amd64) compress-{{VERSION}}-windows-amd64.zip
Windows ARM64 compress-{{VERSION}}-windows-arm64.zip
Linux x64 (amd64) compress-{{VERSION}}-linux-amd64.tar.gz
Linux ARM64 compress-{{VERSION}}-linux-arm64.tar.gz

🚀 Использование

После установки программу можно запустить несколькими способами:

Интерактивный режим (TUI):

./compress
# Windows: .\compress.exe

Пакетная обработка директории:

./compress --input /path/to/files --output /path/to/compressed --config config.yaml

Обработка с выбором алгоритма:

# PDF через PDFCPU (быстрее)
./compress --input ./pdfs --algorithm pdfcpu

# PDF через UniPDF (выше качество)
./compress --input ./pdfs --algorithm unipdf

Сжатие изображений:

./compress --input ./images --output ./compressed --format jpeg --quality 85

📖 Документация

  • README.md — полное руководство по использованию и конфигурации
  • config.yaml.example — пример конфигурационного файла с комментариями
  • Документация по архитектуре — описание Clean Architecture подхода
  • Примеры использования — различные сценарии обработки файлов

Благодарим за использование Compress! 🙏