Skip to content
No description or website provided.
Branch: master
Clone or download
Latest commit 7175f32 Oct 6, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
database/migrations transfer ownership to artisanry Jun 4, 2019
src transfer ownership to artisanry Jun 4, 2019
tests transfer ownership to artisanry Jun 4, 2019
.editorconfig editorconfig Aug 3, 2017
.gitattributes gitattributes Aug 3, 2017
.gitignore first Nov 4, 2016
.travis.yml update deps Jan 29, 2018
LICENSE MPL 2.0 Jun 9, 2019 MPL 2.0 Jun 9, 2019
composer.json Laravel 6 Aug 28, 2019
phpunit.xml.dist first Nov 4, 2016
renovate.json Update renovate.json Oct 6, 2019

Laravel Messageable

Build Status PHP from Packagist Latest Version License


Require this package, with Composer, in the root directory of your project.

$ composer require artisanry/messageable

To get started, you'll need to publish the vendor assets and migrate:

php artisan vendor:publish --provider="Artisanry\Messagable\MessageableServiceProvider" && php artisan migrate


Setup a Model


namespace App;

use Artisanry\Messageable\HasMessages;
use Illuminate\Database\Eloquent\Model;

class User extends Model
    use HasMessages;


Create a new thread

    'subject' => str_random(10),

Add one message to a thread

    'body' => str_random(10),
], $user);

Add multiple messages to a thread

        'data' => ['body' => str_random(10)],
        'creator' => User::find(1),
        'data' => ['body' => str_random(10)],
        'creator' => User::find(2),
], $user);

Add one participant to a thread


Add multiple participants to a thread

    User::find(3), Organization::find(2), Player::find(4)

Mark a thread as ready by the user


Get all threads


Get all threads that a user has participated in


Get all threads that a user has participated in with new messages


Get the creator of a thread


Get the latest message of a thread


Get an array of participant IDs and Types


Check if the User Model hasn't read the latest message in the thread yet


Check if the User Model participated to the Thread



$ phpunit


If you discover a security vulnerability within this package, please send an e-mail to All security vulnerabilities will be promptly addressed.


This project exists thanks to all the people who contribute.


Mozilla Public License Version 2.0 (MPL-2.0).

You can’t perform that action at this time.