Download the PHP package bushart/laravel-messenger without Composer
On this page you can find all versions of the php package bushart/laravel-messenger. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download bushart/laravel-messenger
More information about bushart/laravel-messenger
Files in bushart/laravel-messenger
Package laravel-messenger
Short Description A package for Laravel PHP Framework to add a complete real-time chat system.
License MIT
Homepage https://github.com/busharthussain/laravel-messenger
Informations about the package laravel-messenger
Laravel Messenger
Laravel's #1 one-to-one chatting system package, helps you add a complete real-time chatting system to your new/existing Laravel application with only one command.
Need a Help? 📣
I have created a server for Laravel Messenger on Discord
to let you up-to-date and help you as much as I can .. so now you can chat with me, get a help, showcases, and most importantly to get announcements and updates about Laravel Messenger.
So, https://discord.gg/JSTUHUfA and keep updated.
Features
- One-to-one users chat system.
- Real-time contact list updates.
- Search functionality.
- Contact item's last message indicator (e.g. You: ....).
- Real-time message seen indicator.
- Upload attachments.
- Upload attachments to public, Google and Amazon aws S3 bucket. (By default it is public, you can update it in the config file)
- Send Emoji's.
- Delete Messages and chat
- Responsive design with all devices. with simple and wonderful UI design.
...and much more you have to discover it yourself.
Documentation
- Installation
- Configuration
- Generators
Installation
Step 1: Install Laravel
This is optional; however, if you have not created the laravel app, then you may go ahead and execute the below command:
Step 2: Setup Database Configuration
After successfully installing the laravel app then after configuring the database setup. We will open the ".env" file and change the database name, username and password in the env file.
Step 3: Install Auth Scaffold
Install Laravel breeze for quick auth start up
After Composer has installed the Laravel Breeze package, you may run the Artisan command. This command publishes the authentication views, routes, controllers, and other resources to your application. Laravel Breeze publishes all of its code to your application so that you have full control and visibility over its features and implementation.
The command will prompt you for your preferred frontend stack and testing framework:
Package Installation
Add the package in your composer.json by executing the following command.
This will install the Pusher package too.
So update the .env file.
Install Messenger
All you need is to run the following command to setup everything for you:
This command will automatically do the following:
-
Some configurations.
- Publishing the assets (config, views, assets, models, migrations).
Migration
Run the following command to run the migrations.
After installing the package, you can access the messenger by the default path(routes prefix) which is /messenger, and you can change path name in the config file config/messenger.php as mentioned in the configurations below.
Configurations
You can find package's configuration file at config/messenger.php in your application, and will find the following properties that you can modify inside it:
Display Name
This value is the name for the messenger displayed in the UI
Files upload disk
-
Define the default storage disk for file uploads:
-
Set to 'google' or 's3' to use Google Cloud Storage or Amazon S3 respectively,
- or leave as 'public' to use the default local filesystem storage.
If you want to use Google to upload files. You will have to install the google cloud to your project.
If you want to use AWS S3 for upload file. You will have to install the aws s3 sdk to your project.
File Icons Configuration (Excluding Images and Videos)
Define file extensions and their respective icons to display for uploaded files (excluding images and videos).
Routes' Configurations
This value is package's routes' configuration
is the prefix of the routes in this package, so you can access the messenger from this value by going to .
Pusher configurations
From here you can change pusher's configurations,
Customizations
You may want to do your own customizations and modifications on the code such as the views or the controllers to add a new feature. so, all you need is to publish the required asset mentioned below and start your own customizations!
Package's assets
The following assets already been published during the installation process: config, views, assets, models, migrations only the controllers asset is not published until you do.
Publishing the assets
When you need to publish an asset, all you need is to run the following command :
Change with the required asset name (e.g. css) to be like messenger-css
Controllers
You may want to do some modifications on the controllers of this package, so you need to follow the steps below:
-
Publish asset
-
Go to config/messenger.php and from routes properties, change namespace to App\Http\Controllers\Bushart\Messenger to be like the following:
- Go to app\Http\Controllers\Bushart\Messenger and open MessengerController.php with your code editor .. then change the namespace to the same namespace specified in the step 2 above ..
That's all you need to do.
Now, You can work with package's controller and start your modifications.
Upgrading Messenger
When upgrading to any new Chatify version, you should re-publish Messenger's assets:
To keep the assets up-to-date and avoid issues in future updates, you may add the messenger:publish command to the post-update-cmd scripts in your application's :
Author
License
Laravel Messenger is licensed under the https://choosealicense.com/licenses/mit/