Package Data | |
---|---|
Maintainer Username: | munafio |
Maintainer Contact: | munafaqeelmahdi@gmail.com (Munaf A. Mahdi) |
Package Create Date: | 2019-12-30 |
Package Last Update: | 2024-11-06 |
Home Page: | https://chatify.munafio.com |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-12-17 03:08:00 |
Package Statistics | |
---|---|
Total Downloads: | 295,640 |
Monthly Downloads: | 8,062 |
Daily Downloads: | 270 |
Total Stars: | 2,253 |
Total Watchers: | 47 |
Total Forks: | 483 |
Total Open Issues: | 2 |
It is a Laravel package to add a complete real-time chat system to your application with one command line.
Video Tutorial on YouTube - Click Here
OR
Follow the steps below :
$ composer require munafio/chatify
This package using Pusher Api, so you need to :
.env
file of your Laravel app with your api credentials.Settings
tab for your app within the Channels dashboard.
Read more about Pusher 'Triggering client events'
Packages' assets to be published : The Important assets:
and the optional assets :
to pusblish the assets, do the following command line with changing the tag value .. that means after --tag=
write chatify-
+ asset name as mentioned above.
Example :
$ php artisan vendor:publish --tag=chatify-config
config
folder of your Laravel applications and like so with the other asstes (Package's Views, controllers, migrations ...).Migrate the new migrations
that added by the previous step
$ php artisan migrate
Create a shourtcut or a symlink to the storage
folder into the public
folder
$ php artisan storage:link
For Laravel <=v5.4
that doesn't support package auto-discovery, add the following provider into config/app.php
providers array list :
...
/*
* Package Service Providers...
*/
\Chatify\ChatifyServiceProvider::class,
...
and the following alias into into config/app.php
aliases:
...
/*
* Class Aliases
*/
'Chatify' => Chatify\Facades\ChatifyMessenger::class,
...
/chatify
, and you can change path name in the config file config/chatify.php
as mentioned in the configurations
below.You can find and modify the default configurations of the package at config/chatify.php
file that you published in the step 2 of the installation steps .. and all configurations is documented well to be understood by other developers.
This value is the name of the app which is used in the views or elsewhere in the app.
...
'name' => env('CHATIFY_NAME', 'Chatify Messenger'),
...
This value is the path of the package or in other meaning, it is the prefix of all the registered routes in this package.
...
'path' => env('CHATIFY_PATH', 'chatify'),
...
This value is the middleware of all routes registered in this package which is by default : auth
.
...
'middleware' => env('CHATIFY_MIDDLEWARE', 'auth'),
...
you don't need to modify the credentials of Pusher from here, because you already added your credentials in the .env
file of your Laravel app.
This is the user's avatar setting that includes :
...
'user_avatar' => [
'folder' => 'users-avatar',
...
],
...
which is the default folder name to upload and get user's avatar from.
...
'user_avatar' => [
...
'default' => 'avatar.png',
],
...
which is the default avatar file name for users stored in database .. and when you publishing assets
, a copy of the avatar photo will be copied into your storage path.
This array contains the important default values that used in this package :
...
'attachments' => [
'folder' => 'attachments',
...
],
...
This is the default folder name for attachments
in the storage which is all the attachments will be stored in .. and also going to be used in attachments urls in the views.
...
'attachments' => [
...
'route' => 'attachments.download',
],
...
It is the route name of the download attachments
method.