plank/publisher

A workflow for publishing content in Laravel applications.
5,434 4
Install
composer require plank/publisher
Latest Version:v13.11.5
PHP:^8.3
Laravel:13
Older releases:10 · 11 · 12
License:MIT
Last Updated:Aug 19, 2026
Links: GitHub  ·  Packagist
Maintainer: Plank

Laravel Publisher

Publisher is a Laravel package that provides a complete content publishing workflow, allowing you to maintain both published and draft versions of your content simultaneously. Editors can work on changes without affecting the live published version until changes are explicitly published.

Installation

  1. Install the package via composer:

    composer require plank/publisher
    
  2. Add the Publishable interface and IsPublishable trait to your models:

    <?php
    
    namespace App\Models;
    
    use Illuminate\Database\Eloquent\Model;
    use Plank\Publisher\Concerns\IsPublishable;
    use Plank\Publisher\Contracts\Publishable;
    
    class Post extends Model implements Publishable
    {
        use IsPublishable;
    }
    
  3. Run the install command:

    php artisan publisher:install
    
  4. Add the publisher columns to your model if you did not generate them automatically:

    <?php
    
    use Illuminate\Database\Migrations\Migration;
    use Illuminate\Database\Schema\Blueprint;
    use Illuminate\Support\Facades\Schema;
    
    return new class extends SnapshotMigration
    {
        public function up()
        {
            Schema::table('posts', function (Blueprint $table) {
                $table->string('status');
                $table->boolean('has_been_published');
                $table->boolean('should_delete');
                $table->json('draft')->nullable();
            });
        }
    }
    
  5. Run migrations:

    php artisan migrate
    

Documentation

For complete documentation including configuration, features, and advanced usage, see the Documentation.

Quick Links:

 

Contributing

Please see CONTRIBUTING for details.

 

Credits

 

License

The MIT License (MIT). Please see License File for more information.

 

Security Vulnerabilities

If you discover a security vulnerability within Publisher, please send an e-mail to security@plank.co. All security vulnerabilities will be promptly addressed.

 

Check Us Out!

 

Plank focuses on impactful solutions that deliver engaging experiences to our clients and their users. We're committed to innovation, inclusivity, and sustainability in the digital space. Learn more about our mission to improve the web.

Related Packages

Version History

Version Released PHP Laravel License
v13.11.5 ^8.3 ^13 MIT
v13.11.4 ^8.3 ^13 MIT
v13.11.3 ^8.3 ^13 MIT
v13.11.2 ^8.3 ^13 MIT
v13.11.1 ^8.3 ^13 MIT