LINUX.ORG.RU

Вайбкодю, потихоньку

 , , ,


0

1

Да, слово вайбкодинг имеет негативную коннотацию, но мне кажется странным самому набирать буковки, если это может сделать машина?

В общем я по делу. Видите мою аватарку, не знаю как к этому отнесётся @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

★★★★★

Последнее исправление: unclestephen (всего исправлений: 7)
Ответ на: комментарий от z0idator

в «Приключениях Электроника» всё закончилось хорошо

Вы про фильм или про трилогию? Если про фильм, то «тема не раскрыта», а если про книги, то я бы не был так однозначен.

VIT ★★
()
Ответ на: комментарий от z0idator

Так у нас не по Азимову развитие идёт, а по Лему с «Фиаско» в конце. Ну и великое молчание Вселенной намекает. Разумным может стать только очень агрессивный вид, с понятными последствиями. В общем, т.н. Бог где-то крупно просчитался.

bread
()
Ответ на: комментарий от VIT

я про и фильм, кстати, есть ещё мультифильм-предостережение «Нехочуха», который в определённом смысле можно рассматривать как приквел к «Матрице»

z0idator
()
Ответ на: комментарий от z0idator

На мой скромный взгляд, фильм про детскую дружбу сделан по форме «и так сойдёт» в рамках идеологии и бюджета. А в книге Велтистов сам запутался, забыл что хотел сказать по сути взаимодействия человек-машина, и скатился в примитивное «капитализма плохо потому что».

VIT ★★
()

Почему о Prolog давно ничего не слышно. Какие задачи с помощью него можно было решать?

anonymous
()
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария