Да, слово вайбкодинг имеет негативную коннотацию, но мне кажется странным самому набирать буковки, если это может сделать машина?
В общем я по делу. Видите мою аватарку, не знаю как к этому отнесётся @maxcom, я хочу чтобы на аватарке отображались реакции которые были поставлены за последние N часов отображаются на первой странице уведомлений, зачем? Да кто его знает, может кому-то понравится.
Код, отдебаженный, пушу сюда lor-reaction-avatar.
Правилами форума запрещается создавать ботов, поэтому прошу накидать реакций из вот таких:
reactions: ["👍", "😊", "☕☕", "🎉", "🔥"]
Что делает программа
Заданным шрифтом, заданные реакции отображает на аватаре. Цвет тоже можно подобрать, есть режим dry-run, чтобы поиграть и подобрать параметры. В конфиге есть такие параметры:
lor:
base-url: "https://www.linux.org.ru"
username: "lor_user"
password: "lor_user_password"
notifications-path: "/notifications"
reactions: ["👍", "😊", "☕☕", "🎉", "🔥"]
avatar:
source-dir: "avatar"
output-dir: "data/generated-avatar"
default-size: [300, 300]
# Цвет именно цифр в строках +N. Emoji рисуются emoji-color.
font-color: "#00a000"
emoji-color: "#111111"
font-size: 28
font: "/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf"
emoji-font: "/usr/share/fonts/truetype/noto/NotoColorEmoji.ttf"
emoji-font-size: 28
output-format: "png"
max-file-size-kb: 100
jpeg-quality: 90
top-padding: 65
line-spacing: 12
right-padding: 30
line-spacing: 12
upload:
form-url: "/addphoto.jsp"
# Обычно можно оставить пустым: клиент сам найдёт file input на форме.
file-field: "file"
submit-field: ""
submit-value: ""
extra-fields: {}
state:
file: "data/reaction-state.json"
history-hours: 2
runner:
# Запуск не чаще в минутах
interval-minutes: 120
# 0 — бесконечно, удобно для docker compose up -d.
max-runs: 0
# Отработать сразу при первом запуске
run-on-start: true
# true — построить изображение, но не отправлять форму смены аватара.
dry-run: false
Свою аватарку нужно положить в каталог avatars/ под именем файла username.jpg, после первого запуска, сразу отобразятся изменения. Полученная картинка, опубликованная на сайте, кладётся в каталог data/generated-avatar/username.png.
PS. Ставить лайки можно на любые мои посты и комменты.
У меня сейчас локально немного другая версия, обновлю GitHub вечером, когда тестировать закончу.
Не сердись, $username, некоторые вещи делаются просто для развлечения.
Если всё же maxcom это дело сильно не одобряет, ну что же, тогда прекращаю, займусь чем-нибудь полезным.
PPS. Дефолтные параметры настроены на изображения 300x300 px
lor, вайб-кодинг, от автора, реакции
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Один запрос прес лист, вот пример чека работы и отчетов ... | 5 | 7 | 29-06-2026 |
| 2 | Мама, я программист: 7 лучших нейросетей для вайбкодинга | 3 | 7 | 22-06-2026 |
| 3 | Не хватает двоеточия | 0 | 5 | 01-07-2026 |
| 4 | ИИ'шка захавала документацию? | -6 | 3 | 30-06-2026 |
| 5 | В чём реальная проблема ЛЛМ | -5 | 7 | 03-07-2026 |
| 6 | Специальные/зарезервированные IP-адреса? | 0 | 6 | 02-07-2026 |
| 7 | 👋 Привет! Меня зовут Александр Я создаю визуал с помощью ... | 5 | 7 | 03-07-2026 |
| 8 | raid 10 отвалился диск | 0 | 5 | 01-07-2026 |
| 9 | Как желание быстрее читать чужой код превратилось в войну с недетерминизмом LLM | 0 | 5 | 28-06-2026 |
| 10 | sed захлебывается от grep | 0 | 7 | 30-06-2026 |