Skip to content

Установка ​

Требования ​

Node.js 20+. Нативная библиотека изображений sharp идёт вместе с пакетом: npm ставит готовый бинарник для вашей платформы одновременно с ним, так что ничего больше настраивать не нужно (редкий случай, когда его нет, описан в Хешах изображений). Внешние инструменты в PATH не нужны.

Установка ​

bash
npm install -g @macrulez/mediatoolz

После этого команда mediatoolz доступна из любой папки. Или запустите без установки:

bash
npx @macrulez/mediatoolz image-batch ./photos -r -o ./out -f webp

Быстрый старт ​

bash
mediatoolz image-hash public/img -r --per-file   # плейсхолдеры hazehash/blurhash/thumbhash для каждого изображения
mediatoolz image-batch src/img -r -o public/img -w 400,800,1200 -f avif,webp   # адаптивные размеры и форматы в другую папку
mediatoolz image-batch photos -r -o out -f webp                                # только сменить формат, размер остаётся
mediatoolz image-batch assets -r --replace -w 1600 --dry-run                   # предпросмотр уменьшения оригиналов на месте (бэкап + restore)

mediatoolz ui                                    # веб-интерфейс для обеих команд

mediatoolz --help перечисляет обе команды с их собственными флагами; mediatoolz <команда> --help показывает полный список флагов одной команды со значениями по умолчанию.

Переход с DevToolz ​

image-hash и image-batch жили в DevToolz до версии 0.4.3. В DevToolz 0.5.0 обе команды только печатают, куда они переехали, и завершаются с кодом 2, так что скрипт, который всё ещё вызывает devtoolz image-batch …, падает громко, а не молча ничего не делает. Чтобы перейти:

  • Используйте mediatoolz image-batch … и mediatoolz image-hash … с теми же флагами.
  • Перенесите папки с конфигурациями и пресетами резкости: .devtoolz/image-batch/ становится .mediatoolz/image-batch/, и в проекте, и в домашней папке.
  • Бэкапы, сделанные --replace (.image-batch-backup/), сохраняют имя и восстанавливаются через mediatoolz image-batch restore.
  • sharp теперь идёт вместе с mediatoolz, так что управляемая копия в ~/.devtoolz/deps не используется и её можно удалить. Файл кэша image-hash по умолчанию — .mediatoolz-image-hash-cache.json.
  • Веб-интерфейс — mediatoolz ui; в devtoolz ui остались только проверки кода и очистка.