О проекте
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 для постов, профилей и сообществ
- Парсинг метаданных внешних ссылок
- Короткие ссылки и редиректы
Стек технологий
| Слой | Технологии |
|---|---|
| Backend | PHP 8.4+, Laravel 13 |
| Frontend | Vue 3, Inertia.js 2, Vite, Tailwind CSS 3 |
| База данных | MySQL 8 |
| Кэш / Сессии / Очереди | Redis (Predis) |
| Реальное время | Laravel Reverb (WebSocket) |
| Мониторинг очередей | Laravel Horizon |
| Поиск | Laravel Scout (в .env.example — SCOUT_DRIVER=null; в config/scout.php по умолчанию algolia; опционально драйвер database) |
| Медиа | Local, Cloudinary, Yandex Cloud Object Storage |
| Инфраструктура | Docker, Docker Compose, Nginx, Supervisor |
Лицензия
JournalPHP распространяется под лицензией MIT — вы можете свободно использовать, изменять и распространять код.