Skip to content

О проекте

JournalPHP — это open-source платформа для создания тематических сообществ. Пользователи публикуют посты, обсуждают их в комментариях, подписываются на авторов и сообщества, обмениваются личными сообщениями. Администратор управляет всем этим через встроенную админ-панель — без сторонних сервисов и SaaS-ограничений.

Для кого подходит JournalPHP

АудиторияЧем полезен
АдминистраторыГотовая платформа на своём сервере, полный контроль над данными, без платы за пользователей
РазработчикиЗнакомый стек Laravel + Vue + Inertia, MIT-лицензия, Docker, расширяемая архитектура
Команды и сообществаЛента, обсуждения, подписки, модерация и монетизация — всё включено

Ключевые возможности

Контент и сообщества

  • Тематические сообщества (создание пользователями включается в настройках админки)
  • Блочный редактор постов (Editor.js) с автосохранением и историей версий
  • Опросы и голосования в постах
  • Репосты, закрепление, снятие с публикации
  • Теги и теговая навигация
  • Персональная, популярная и редакторская ленты
  • Генерация sitemap.xml и отдельных XML-карт

Социальные механики

  • Реакции и лайки на посты и комментарии
  • Подписки на авторов и сообщества
  • Закладки и избранное
  • Упоминания (@username) с уведомлениями
  • Рейтинг пользователей и блок топ-авторов
  • Сохранённые GIF

Профиль и аккаунт

  • Регистрация и вход через email
  • OAuth: Google, Яндекс, ВКонтакте, Facebook, Apple, GitHub
  • One Tap — быстрый вход через Google и Яндекс (всплывающее окно для гостей)
  • Настройка публичного профиля — аватар, шапка, описание
  • Управление сессиями и мягкое удаление аккаунта
  • Игнорирование пользователей, постов и ключевых слов

Личные сообщения и уведомления

  • Приватные чаты в реальном времени (Laravel Reverb / WebSocket)
  • Уведомления о реакциях, ответах, упоминаниях
  • Настройки уведомлений на уровне пользователя
  • Email-уведомления

Модерация и безопасность

  • Жалобы на посты, комментарии и пользователей
  • Очередь немодерированного контента
  • Временные и постоянные баны
  • Контент-баны (запрет на публикацию)
  • Автоматические баны по правилам нарушений
  • AI-модерация текста (Deepseek)
  • Модерация изображений (Yandex Vision API)

Подписки и монетизация

  • Тарифные планы с разными наборами функций
  • Платёжные провайдеры: ЮКасса (YooKassa), T-Bank
  • Автопродление подписки
  • Функции, доступные по подписке: AI-резюме, видеоаватар, реакции, значки
  • Рекламные блоки — баннерные и встроенные

AI-интеграции

  • Автоматические резюме постов (DeepSeek)
  • Комментарий-бот на базе ChatGPT
  • Настройка промптов и API-ключей через админ-панель (/admin-panel/ai-settings); переменные DEEPSEEK_* в .env — fallback
  • AI-модерация текста и изображений

SEO

  • Метаданные для ключевых страниц
  • OpenGraph и JSON-LD для постов, профилей и сообществ
  • Парсинг метаданных внешних ссылок
  • Короткие ссылки и редиректы

Стек технологий

СлойТехнологии
BackendPHP 8.4+, Laravel 13
FrontendVue 3, Inertia.js 2, Vite, Tailwind CSS 3
База данныхMySQL 8
Кэш / Сессии / ОчередиRedis (Predis)
Реальное времяLaravel Reverb (WebSocket)
Мониторинг очередейLaravel Horizon
ПоискLaravel Scout (в .env.exampleSCOUT_DRIVER=null; в config/scout.php по умолчанию algolia; опционально драйвер database)
МедиаLocal, Cloudinary, Yandex Cloud Object Storage
ИнфраструктураDocker, Docker Compose, Nginx, Supervisor

Лицензия

JournalPHP распространяется под лицензией MIT — вы можете свободно использовать, изменять и распространять код.

Released under the MIT License.