категории | RSS

Вышел Comentario 3.0.0: сервер комментариев с открытым исходным кодом

Дашборд Comentario 3.0.0

Вышло мажорное обновление Comentario 3.0.0 — свободного сервера комментариев c открытым исходным кодом. С его помощью можно добавлять возможность комментирования к любым статическим страницам (наподобие того, как это сделано здесь, на Хабре), вставив лишь пару HTML-тегов.

Comentario написан на Go и Angular и использует БД PostgreSQL для хранения комментариев.Страница со встроенными комментариями.Предыстория

Comentario начал своё существование в виде форка некогда популярного сервера комментариев Commento (я как-то написал пост на тему его запуска в Docker Compose).

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

Код был явно написан человеком в программировании малоопытным (похоже, это вообще был студенческий проект автора), содержал просто чудовищных косяки и был совершенно неподдерживаем и неразвиваем. Тогда-то я понял, почему автор его забросил.

Приведу лишь один пример: для загрузки дерева комментариев из БД (наиболее частая операция в данном продукте) там сначала выполнялся запрос для загрузки собственно комментов, потом по одному запросу на каждого автора комментария и — внимание! — по одному запросу на каждый коммент для получения его оценки (score). Легко себе представить, как «быстро» это работало, например, если открыть страницу с парой тысяч комментариев.

Форк получил название Comentario («комментарий» по-испански) и был полностью совместим с оригиналом в плане структуры БД в версии 2.x. При этом были значительно переработаны бэкенд и embed (встраиваемая) часть, а админка написана с нуля на Angular.Релиз 3.0.0

В версии Comentario 3.0.0 от легаси-кода Commento не осталось практически ничего. Кроме того, структура базы данных была заново создана с нуля (разумеется, в наиболее оптимальном виде).

Из самых значительных изменений можно отметить следующее:

Роли пользователей и привилегия superuser

Возможность банить пользователей

Загружаемые аватары

Логин через Facebook (плюс к имеющемуся через Google, Twitter/X, GitHub, GitLab)

Неинтерактивный SSO

Поддержка расширений, проверяющих комменты на спам и токсичный контент, таких как Akismet и Perspective

Поддержка всех версий PostgreSQL с 10 по 16 включительно

Переработанный дашборд (см. скриншот выше)

Почти стопроцентное покрытие end-to-end-тестами

Всё это в дополнение к уже имеющимся фичам:

Комментарии неограниченной вложенности

«Закреплённые» комментарии

Голосование за комментарии

Операции с доменом (сброс, очистка, экспорт и т.д.)

Импорт комментариев из Commento и Disqus

Модерация комментариев и гибкие её настройки

Емэйл-уведомления о модерации и об ответах

Статистика просмотров и комментариевДемо-версия

Увидеть Comentario живьём можно на демо-сайте.

Также можно поиграть с его административным интерфейсом: логиниться с емэйлом [email=admin@admin]admin@admin[/email] и паролем admin (или [email=test@test]test@test[/email] / test).Исходный код

Проект на GitLab

Полный список изменений



Источник новости: habr.com

DimonVideo
2023-12-07T14:50:07Z

Здесь находятся
всего 0. За сутки здесь было 0 человек
Яндекс.Метрика