| Краткое описание | Discourse Animated Avatars позволяет пользователям загружать анимированные аватары в формате gif/webp, которые будут анимироваться при наведении или выделении в постах, карточках пользователей и на страницах профиля. | |
| Ссылка на репозиторий | https://github.com/discourse/discourse-animated-avatars | |
| Руководство по установке | Как установить плагины в Discourse |
Возможности
По умолчанию анимация приостанавливается, когда элемент не находится в фокусе. Внутри тем анимация приостанавливается, если на пост не наведено или он не выделен.
animated_avatars_always_animate: отключает описанное выше приостановление и принудительно заставляет аватары всегда анимироваться.
animated_avatars_min_trust_level_to_display ограничивает анимацию аватаров в зависимости от уровня доверия.
Учитывает настройку prefers-reduced-motion в параметрах доступности браузера: анимации будут полностью отключены.
Анимированные gif автоматически конвертируются в webp при загрузке, что уменьшает общий размер файла. Это можно настроить с помощью animated_gif_avatar_to_webp (по умолчанию true).
Конфигурация
Этот плагин имеет необязательную зависимость от gifsicle. Он используется для изменения размера загруженных gif-изображений, чтобы они соответствовали квадратному аватару, что помогает корректировать соотношение сторон, а также выравнивать различия в размерах между статичными и анимированными изображениями для более плавной замены. Плагин будет работать и без него, но неквадратные аватары могут отображаться искаженными.
gifsicle не требуется для
animated_gif_avatar_to_webp. Анимированные gif будут конвертированы в webp с обрезкой до квадратных аватаров.
Для включения необходимо добавить вызов скрипта установки в ваш app.yml. Пример того, как будет выглядеть хук after_code, приведен ниже:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/discourse-animated-avatars.git
- exec:
cd: $home/plugins/discourse-animated-avatars
raise_on_fail: false
cmd:
- $home/plugins/discourse-animated-avatars/scripts/install.sh
Настройки
| Название | Описание |
|---|---|
| animated avatars min trust level to display | Минимальный уровень доверия для отображения анимированного аватара |
| animated avatars always animate | Всегда анимировать аватары |
| animated gif avatar to webp | автоматически конвертирует анимированные gif-аватары в webp при загрузке, уменьшая размер файла. (по умолчанию: true) |
| animated gif avatar webp quality | качество конвертации gif в webp. Рекомендуемые настройки от 75% до 100% (по умолчанию: 80%) |
Технические детали
Включены дополнительные команды CLI для определения количества аватаров в формате gif/webp и конвертации существующих gif-аватаров в webp.
bin/rake animated_avatars:count_animated подсчитывает общее количество анимированных аватаров, сгруппированных по формату gif/webp
bin/rake animated_avatars:gif_to_webp конвертирует существующие анимированные gif-аватары в webp. Новые аватары применяются автоматически, а существующие gif-аватары удаляются задачей CleanUpUploads.

