PHP library for sending events, authenticating users and querying channels through the Pusher Channels HTTP API.
munafio/chatify
A real-time chat package for Laravel that adds direct messages, groups, attachments, and a bundled messenger UI to a Laravel app.
- Stars
- 2,450
- Forks
- 484
- Open issues
- 17
- Last commit
- 2 days ago
What is it?
Chatify is a Laravel package that adds real-time messaging to an existing Laravel application. It covers direct messages between authenticated users, group conversations with roles and participant management, and a set of messaging features such as typing indicators, read receipts, online presence, replies, edits, forwarding, and message search.
The package ships with a bundled messenger interface built with Vue 3, Pinia, and Tailwind CSS, served at /chatify. It also offers a headless JSON API for teams that want to build their own frontend, such as a SPA or mobile client. Real-time delivery requires Pusher, Laravel Reverb, or a compatible WebSocket server.
Installation is done through a single Artisan command, and the package requires PHP 8.2+ and Laravel 11+. Version 2 is currently in beta and is installed with the beta constraint, while v1.6 remains the stable line.
Key features
- 01Direct messages and group conversations with roles and permissions
- 02Typing indicators, read receipts, and online/offline presence
- 03Attachments for images, documents, audio, and video with size limits
- 04Voice note recording and playback
- 05Reply, edit, delete, and forward messages, plus in-conversation search
- 06Bundled Vue 3 messenger UI and a headless JSON API
Use cases
- Adding a messaging feature to an existing Laravel SaaS or community app
- Building an internal team chat inside a Laravel-based admin tool
- Creating a custom chat frontend that talks to a Laravel backend through the JSON API
Quick start
- 1
Install the v2 beta package with Composer
composer require munafio/chatify:^2.0@beta - 2
Read the official docs for installation and configuration
Things to know
- Version 2 is in beta, so v1 is the stable option if you need production stability.
- Real-time features require a broadcasting service such as Pusher, Laravel Reverb, or a compatible WebSocket server.
Topics
FAQ
- What is chatify?
- A real-time chat package for Laravel that adds direct messages, groups, attachments, and a bundled messenger UI to a Laravel app. Chatify is a Laravel package that adds real-time messaging to an existing Laravel application. It covers direct messages between authenticated users, group conversations with roles and participant management, and a set of messaging features such as typing indicators, read receipts, online presence, replies, edits, forwarding, and message search.
- Is chatify free to use? What license does it have?
- chatify is open source under the MIT license. Check the license terms before using it in commercial products.
- Is chatify still maintained?
- Actively maintained. The last commit to chatify was on Nov 6, 2026.
- What can I use chatify for?
- Adding a messaging feature to an existing Laravel SaaS or community app Building an internal team chat inside a Laravel-based admin tool Creating a custom chat frontend that talks to a Laravel backend through the JSON API
- How do I install chatify?
- Install the v2 beta package with Composer: composer require munafio/chatify:^2.0@beta Read the official docs for installation and configuration
- Where can I get chatify?
- The source code and installation instructions are on GitHub: https://github.com/munafio/chatify
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Self-hosted, language-agnostic real-time PUB/SUB messaging server that pushes messages to users over WebSocket, SSE, HTTP-streaming, GRPC and WebTransport.
A scalable, fault-tolerant XMPP instant messaging server written in Erlang, designed for large enterprise installations.
Open-source instant messaging server in Go that developers integrate into their own apps, with SDK, REST API and webhooks.
A chat server built on uWebSockets.js that offers an alternative to XMPP, with a Node.js backend, MongoDB and Redis.
A Laravel wrapper around PhpSpreadsheet for exporting collections, queries and Blade views to Excel or CSV, and importing spreadsheets into Eloquent models.