All Projects → cmgmyr → Laravel Messenger

cmgmyr / Laravel Messenger

Licence: mit
Simple user messaging package for Laravel

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to Laravel Messenger

Nebula
Nebula is a minimalistic and easy to use administration tool for Laravel applications, made with Laravel, Alpine.js, and Tailwind CSS.
Stars: ✭ 190 (-91.12%)
Mutual labels:  hacktoberfest, laravel, package, composer
Laravel Server Monitor
Server Monitoring Command for Laravel Applications
Stars: ✭ 424 (-80.19%)
Mutual labels:  laravel, composer, composer-packages
Laravel Acl
This package helps you to associate users with permissions and permission groups with laravel framework
Stars: ✭ 404 (-81.12%)
Mutual labels:  hacktoberfest, laravel, package
Artisan View
👀 Manage your views in Laravel projects through artisan
Stars: ✭ 708 (-66.92%)
Mutual labels:  hacktoberfest, laravel, package
video-downloader
Video Downloader for Facebook.
Stars: ✭ 63 (-97.06%)
Mutual labels:  package, composer, composer-packages
Jwt Auth Guard
JWT Auth Guard for Laravel and Lumen Frameworks.
Stars: ✭ 319 (-85.09%)
Mutual labels:  laravel, composer, composer-packages
Sleepingowladmin
🦉 Administrative interface builder for Laravel (Laravel admin)
Stars: ✭ 671 (-68.64%)
Mutual labels:  laravel, package, composer
Laravel Translatable
A Laravel package for multilingual models
Stars: ✭ 624 (-70.84%)
Mutual labels:  hacktoberfest, laravel, package
Htmlcache
Laravel middleware to cache the rendered html
Stars: ✭ 35 (-98.36%)
Mutual labels:  laravel, package, composer
Laravel Packager
A cli tool for creating Laravel packages
Stars: ✭ 1,049 (-50.98%)
Mutual labels:  hacktoberfest, laravel, package
Telegram Bot Sdk
🤖 Telegram Bot API PHP SDK. Lets you build Telegram Bots easily! Supports Laravel out of the box.
Stars: ✭ 2,212 (+3.36%)
Mutual labels:  laravel, composer, composer-packages
Laravelpackage.com
Documentation for LaravelPackage.com: Learn to create Laravel specific PHP packages from scratch, following this open documentation.
Stars: ✭ 214 (-90%)
Mutual labels:  hacktoberfest, laravel, package
Laravel Totem
Manage Your Laravel Schedule From A Web Dashboard
Stars: ✭ 1,299 (-39.3%)
Mutual labels:  hacktoberfest, laravel, package
Comments
Native comments for your Laravel application.
Stars: ✭ 390 (-81.78%)
Mutual labels:  hacktoberfest, laravel, package
Package Skeleton
📦 My base for PHP packages.
Stars: ✭ 6 (-99.72%)
Mutual labels:  laravel, package, composer
Laravel Package Maker
Get a 📦 skeleton and all other `make` commands from laravel base for package development.
Stars: ✭ 89 (-95.84%)
Mutual labels:  hacktoberfest, laravel, package
Laravel Paket
Composer GUI. Manage Laravel dependencies from web interface without switching to command line!
Stars: ✭ 143 (-93.32%)
Mutual labels:  laravel, package, composer
Nova Cashier Manager
Managing Stripe subscriptions inside the incredible Laravel Nova admin panel.
Stars: ✭ 150 (-92.99%)
Mutual labels:  laravel, package
Has Parameters
A trait that allows you to pass arguments to Laravel middleware in a more PHP'ish way.
Stars: ✭ 149 (-93.04%)
Mutual labels:  hacktoberfest, laravel
Srl Php
Simple Regex Language
Stars: ✭ 1,808 (-15.51%)
Mutual labels:  composer, composer-packages

Tests MySQL Tests PostgreSQL Tests

Latest Version Total Downloads Software License

Laravel Messenger

This package will allow you to add a full user messaging system into your Laravel application.

Leave some feedback

How are you using laravel-messenger?

Features

  • Multiple conversations per user
  • Optionally loop in additional users with each new message
  • View the last message for each thread available
  • Returns either all messages in the system, all messages associated to the user, or all message associated to the user with new/unread messages
  • Return the users unread message count easily
  • Very flexible usage so you can implement your own access control

Common uses

  • Open threads (everyone can see everything)
  • Group messaging (only participants can see their threads)
  • One to one messaging (private or direct thread)

Laravel Versions

Laravel Messenger
4.* 1.*
5.0-5.4 <= 2.16.2
5.5+ 2.*

Installation (Laravel 4.x - no longer actively supported)

Installation instructions for Laravel 4 can be found here.

Installation (Laravel 5.x)

composer require cmgmyr/messenger

Or place manually in composer.json:

"require": {
    "cmgmyr/messenger": "~2.0"
}

Run:

composer update

Add the service provider to config/app.php under providers:

'providers' => [
    Cmgmyr\Messenger\MessengerServiceProvider::class,
],

Note: If you are using Laravel 5.5, this step is unnecessary. Laravel Messenger supports Package Discovery.

Publish config:

php artisan vendor:publish --provider="Cmgmyr\Messenger\MessengerServiceProvider" --tag="config"

Update config file to reference your User Model:

config/messenger.php

Create a users table if you do not have one already. If you need one, the default Laravel migration will be satisfactory.

(Optional) Define names of database tables in package config file if you don't want to use default ones:

'messages_table' => 'messenger_messages',
'participants_table' => 'messenger_participants',
'threads_table' => 'messenger_threads',

Publish migrations:

php artisan vendor:publish --provider="Cmgmyr\Messenger\MessengerServiceProvider" --tag="migrations"

Migrate your database:

php artisan migrate

Add the trait to your user model:

use Cmgmyr\Messenger\Traits\Messagable;

class User extends Authenticatable {
    use Messagable;
}

Examples

Example Projects

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

Special Thanks

This package used AndreasHeiberg/laravel-messenger as a starting point.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].