PHPackages                             ehsan-nosair/chativel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ehsan-nosair/chativel

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ehsan-nosair/chativel
=====================

ChatiVel is a plugin that provides a real-time chat system for your laravel application, its support multi-guards, rtl, reverb-pusher, RESTapi, and much more.

v0.1.0-alpha.5(11mo ago)014[3 PRs](https://github.com/ehsan-nosair/chativel/pulls)MITPHPPHP ^8.1CI passing

Since Jan 2Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/ehsan-nosair/chativel)[ Packagist](https://packagist.org/packages/ehsan-nosair/chativel)[ Docs](https://github.com/ehsan-nosair/chativel)[ GitHub Sponsors](https://github.com/ehsan-nosair)[ RSS](/packages/ehsan-nosair-chativel/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (11)Versions (10)Used By (0)

ChatiVel
========

[](#chativel)

[![Latest Version on Packagist](https://camo.githubusercontent.com/9986d9e35b71a05399e345aa9a7338278a27b013a43f7ce1866aca933ac35488/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f656873616e2d6e6f736169722f636861746976656c2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ehsan-nosair/chativel)[![GitHub Tests Action Status](https://camo.githubusercontent.com/b70a64524a30304d2da8d77b8cd7d7245d2d03fa94af3db8157ce22d7dd1fb6d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f656873616e2d6e6f736169722f636861746976656c2f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/ehsan-nosair/chativel/actions?query=workflow%3Arun-tests+branch%3Amain)[![GitHub Code Style Action Status](https://camo.githubusercontent.com/286903f19f2d8cc7bdf09ecc3386b9e780805788cd668feed6932384f81ce123/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f656873616e2d6e6f736169722f636861746976656c2f6669782d7068702d636f64652d7374796c652d6973737565732e796d6c3f6272616e63683d6d61696e266c6162656c3d636f64652532307374796c65267374796c653d666c61742d737175617265)](https://github.com/ehsan-nosair/chativel/actions?query=workflow%3A%22Fix+PHP+code+style+issues%22+branch%3Amain)[![Total Downloads](https://camo.githubusercontent.com/bb160836ccabd7429d75bb94564c7d2c93a7a339bcba3f23bba64a6bc81267f6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f656873616e2d6e6f736169722f636861746976656c2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ehsan-nosair/chativel)

real-time chat system for laravel &amp; filament.

- support multi gurad
- support rtl
- languages (en, ar)
- using laravel broadcasting so you can use (reverb, pusher)

Important

the package is still in development stage

Installation
------------

[](#installation)

You can install the package via composer:

```
composer require ehsan-nosair/chativel
```

Run this command to install the package, it will publish config file and migrations

```
php artisan chativel:install
```

### Following steps just if you want to add the chat page to filament panel

[](#following-steps-just-if-you-want-to-add-the-chat-page-to-filament-panel)

Run this command to copy assets to public folder

```
php artisan filament:assets
```

You need to use 'filament custom theme' [create custom theme](https://filamentphp.com/docs/3.x/panels/themes#creating-a-custom-theme). Then add following line to your theme `tailwind.config.js` file.

```
content: [
    ...
    './vendor/ehsan-nosair/chativel/resources/views/**/**/*.blade.php',
    ...
]
```

> this package use laravel broadcasting so you need to install it. use following command

```
php artisan install:broadcasting
```

then if you want to use it in a filament panel then you need to enable echo in `config/filament` like following for `reverb`

```
// ...

'echo' => [
    'broadcaster' => 'reverb',
    'key' => env('VITE_REVERB_APP_KEY'),
    'cluster' => env('VITE_REVERB_APP_CLUSTER'),
    'wsHost' => env('VITE_REVERB_HOST'),
    'wsPort' => env('VITE_REVERB_PORT'),
    'wssPort' => env('VITE_REVERB_PORT'),
    'authEndpoint' => '/broadcasting/auth',
    'disableStats' => true,
    'encrypted' => true,
    'forceTLS' => false,
],

// ...
```

then start reverb server:

```
php artisan reverb:start
```

Usage
-----

[](#usage)

First: you need to use `Chatable` trait in your models

```
