Чат с использованием HTML + JS + PHP. Рабочий пример -- https://flatchat.js-master.ru
Чат хранит свои данные в файлах (flat file system), без использования баз данных, что сокращает процедуру его установки до простого копирования.
Движок чата имеет расширенные возможности, позволяющие пользователям загружать в посты изображения, озвучивать существующие посты, осуществлять голосовой ввод текста. Для ускорения работы движок ограничивает количество загружаемых в чат постов. При этом остальные посты остаются доступными в архивах чата.
Тэгирование пользователей происходит в тихом режиме. То есть в чате не появляется никаких дополнительных оповещений, но при этом копии всех постов с обращениями к текущему пользователю выводятся ниже чата, что устраняет необходимость просмотра всей ленты переписки для поисков обращений к себе.
Имеется возможность кастомизации шаблонов. Можно создать при помощи них не только абсолютно любой внешний вид, но и расширить базовый функционал чата своими серверными или клиентскими скриптами. Подробнее здесь -- https://github.com/korniloff75/flatChat/blob/dev/templates/Readme.md
В чате реализована простейшая защита от фейковых аккаунтов. Во время каждой сессии пользователь должен ввести свой секретный ключ. При первом вводе ключ сохраняется и далее по нему производится идентификация ползователя.
Чат связывается с сервером через ajax long polling. К сожалению, с веб-сокетами я так и не смог разобраться самостоятельно. Если кто-то поможет перевести движок на них, буду признателен.
Для смены админ-пароля удалите файл /assets/adm.json. После этого, при первой попытке залогиниться, введите любой пароль, который станет административным.
При заходе под Администратором появляются возможности редактирования / удаления постов. Удаление постов может быть как одиночным, так и пакетным. Добавлена возможность бана пользователей.
Рекомендуется организовывать доступ к чату по протоколу https, поскольку иначе не будут работать такие фичи, как голосовой ввод текста и показ уведомлений о новых сообщениях.
Лицензия -- https://github.com/korniloff75/flatChat/blob/dev/LICENSE.md
Прототип до начала разработки -- https://protocoder.ru/minichat