vigstudio / livewire-comments
Livewire comments packages use backend by vgcomments
Installs: 106
Dependents: 0
Suggesters: 0
Security: 0
Stars: 14
Watchers: 1
Forks: 3
Open Issues: 1
Language:CSS
Type:laravel-library
Requires
- php: ^8.0
- archielite/laravel-heroicons: ^0.2.0
- livewire/livewire: ^2.10.7
- vigstudio/vgcomments: ^1.1.4
Requires (Dev)
- orchestra/testbench: ^6.0|^8.0
- phpunit/phpunit: ^9.0|^10.0
README
Livewire Comments Package
Features
- Add comments to any model
- Multiple comment systems on the same page
- Multiple auth guards
- Image and File upload support
- Drag and drop, copy and paste upload files support
- reCaptcha v3 support
- Emoji support
- Markdown support
- NSFW image upload check support
Pending Features
- Allow guest to comment
- Admin panel
- Mention user with @
- Emoji Suggestion Popup
- Delete Report comment
- Ratting system
- Toolbar for comment
- Comment history
- Show Nested comments
- Unit test
Packages
- Livewire
- AlpineJs
- Heroicons Blade Components
- VgComments
- TailwindCss
- Plyr
- highlight.js
- picmo
- Laravel Mix
- Laravel Echo
Introduction
Package use Macroable trait to add comments to any model. It uses Livewire and AlpineJs to create a comment system with a lot of features.
Package support multiple comment systems on the same page.
Package support multiple auth guards.
Prerequisites
Install Livewire Comments Package
In your terminal run:
composer require vigstudio/livewire-comments
Publish the assets files with:
php artisan vendor:publish --tag=vgcomment-assets-livewire
You can publish the config with:
php artisan vendor:publish --tag=vgcomment-config
Edit prefix route in config/vgcomment.php
file.
/* |-------------------------------------------------------------------------- | Route Prefix |-------------------------------------------------------------------------- | | This is the URI path where VgComment will be accessible from. Feel free to | change this path to anything you like. | */ 'prefix' => 'vgcomment',
Edit connection name in config/vgcomment.php
file.
/* |-------------------------------------------------------------------------- | Database Connection |-------------------------------------------------------------------------- | | Here you may specify which of the database connections below you wish | to use as your default connection for all of your database work. | */ 'connection' => env('DB_CONNECTION', 'mysql'),
Edit table names in config/vgcomment.php
file.
/* |-------------------------------------------------------------------------- | Name of Tables in Database |-------------------------------------------------------------------------- | | This is the name of the table that will be created by the migration and | used by the Comment model shipped with this package. | | "comments" : Comments Table | "files" : Files Attachment Table | "reactions" : Reactions Table | "reports" : Reports Table | "settings" : Settings Table | */ 'table' => [ 'comments' => 'vgcomments', 'files' => 'vgcomment_files', 'reactions' => 'vgcomment_reactions', 'reports' => 'vgcomment_reports', 'settings' => 'vgcomment_settings', ],
Config Column or Attribute User Model in config/vgcomment.php
file.
/* |-------------------------------------------------------------------------- | Column of User Table for get Data |-------------------------------------------------------------------------- | | This is the setting for column of user table for get data. | "user_column_name" : Column name for get name user | "user_column_email" : Column name for get email user | "user_column_url" : Column name for get url user | */ 'user_column_name' => 'name', 'user_column_email' => 'email', 'user_column_url' => 'url', 'user_column_avatar_url' => 'avatar_url',
Set moderation user in config/vgcomment.php
file.
/* |-------------------------------------------------------------------------- | Users Manager Comments |-------------------------------------------------------------------------- | | This is the setting for users manager comments. | 'guard' => [user_id] | | Example: | 'web' => [1, 2, 3] | 'api' => [1, 2, 3] | */ 'moderation_users' => [ 'web' => [1], ],
Run the migrate command to create the necessary tables:
Before running the migrate command, you can edit the config/vgcomment.php
file to change the table names.
php artisan migrate
Additionally you may want to clear the config, cache, etc:
php artisan optimize:clear