Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lakshan-madushanka/laravel-comments

Integrate seamless commenting functionality into your Laravel project
https://github.com/lakshan-madushanka/laravel-comments

comment-system laravel livewire3

Last synced: about 18 hours ago
JSON representation

Integrate seamless commenting functionality into your Laravel project

Awesome Lists containing this project

README

        



**[Documentation](https://lakm.gitbook.io/commenter)** |
**[Admin Panel](https://github.com/Lakshan-Madushanka/laravel-comments-admin-panel)** |
**[Overview](#overview)** |
**[Articles](#articles)** |
**[Key Features](#key-features)** |
**[Why Commenter](#why-commenter)** |
**[Quick Start](#quick-start)** |
**[Themes](#themes)** |
**[Demo](#demo)** |
**[Changelog](#changelog)** |
**[Testing](#testing)** |
**[Roadmap](#roadmap)** |
**[Security](#security)** |
**[License](#license)** |
**[Sponsor](#sponsor-this-project)**

#
#

***Everything you need for your commenting system***

A Laravel package that brings powerful commenting functionality to your apps ๐Ÿ˜

[![Laravel](https://img.shields.io/badge/laravel-%5E10.0%20%7C%20%5E11.0-red)](https://laravel.com)
[![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/Lakshan-Madushanka/laravel-comments/run-tests.yml)](https://github.com/Lakshan-Madushanka/laravel-comments/actions?query=workflow%3ATests+branch%3Amain)
[![Packagist Version](https://img.shields.io/packagist/v/lakm/laravel-comments)](https://packagist.org/packages/lakm/laravel-comments)
[![Downloads](https://img.shields.io/packagist/dt/lakm/laravel-comments)](https://packagist.org/packages/lakm/laravel-comments)
[![GitHub License](https://img.shields.io/github/license/Lakshan-Madushanka/laravel-comments)](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/LICENSE.md)

## Overview

Commenter is a feature-rich, modern package with an admin panel designed to address all your commenting needs. With this
package, you won't need any additional tools for the comment functionality in your Laravel projects.

See the [documentation](https://lakm.gitbook.io/commenter/basics/installation) for detailed installation and usage instructions.

```php

```

### Articles
- [Laravel News](https://laravel-news.com/laravel-commentable-package)
- [Enable commenting in seconds with Laravel
](https://medium.com/@epmadushanka/enable-commenting-in-seconds-with-laravel-6cb7cc7eb6f2)


screenshot

## Key Features

- โค๏ธ Simple, modern, and user-friendly interfaces.
- ๐Ÿ“ฑ Mobile responsiveness.
- โ›ฏ Dark mode support.
- ๐Ÿ“ WYSIWYG editor.
- ๐Ÿ“” Syntax highlighting.
- ๐Ÿ”’ Robust security features.
- ๐Ÿ”‘ Effective spam prevention.
- ๐Ÿคฉ Reaction options.
- ๐Ÿ“ž Support for threaded replies.
- ๐Ÿ‘ค User mention functionality.
- ๐Ÿ‘ฅ Display list of users who reacted (auth mode only).
- ๐Ÿ”ข Pagination.
- ๐Ÿ‘ฎโ€โ™‚๏ธSupport for both authentication mode and guest mode (mutually exclusive).
- ๐Ÿ” Advanced filtering and sorting options.
- ๐Ÿฅฐ Responsive design using a combination of Livewire and Alpine.js.
- ๐Ÿš€ Optimized performance.
And much more.

## Why Commenter

The commenting feature is a common requirement for most websites. Allowing users to comment enables interaction and enhances the user experience. While Laravel offers a wealth of packages to meet various project needs, there are limited options when it comes to commenting features.

### Here are some drawbacks of existing commenting packages:

- Outdated: Uses outdated technologies and is not actively maintained.
- Lack of Features: Missing many essential features.
- No Admin Panel: Requires additional time to implement an admin panel independently.
- Bad Design: Interfaces are not user-friendly.
- Not Mobile Responsive: Not optimized for mobile devices.
- Performance Issues: May cause performance slowdowns.
- Lack of Configurability: Limited options for customization and configuration.

Due to these issues, most companies tend to opt for commercial packages or plugins. However, spending extra money on commercial packages reduces the company's overall profit. This package is developed to address all these shortcomings.

> As a full-stack developer, I have personally encountered these issues. That's why I developed this packageโ€”not only for my own projects but also to benefit other developers.

## Quick Start

### Installation
```bash
composer require lakm/laravel-comments -W
php artisan commenter:install
```

### Usage
Implement `CommentableContract` and import `Commentable` trait in commentable model.

```php
use LakM\Comments\Concerns\Commentable;
use LakM\Comments\Contracts\CommentableContract;

class Post extends Model implements CommentableContract
{
use Commentable;
}

```

Implement `CommenterContract` and import `Commenter` trait in commenter model.

```php
use LakM\Comments\Concerns\Commenter;
use LakM\Comments\Contracts\CommenterContract;

class User extends Model implements CommenterContract
{
use Commenter;
}
```

Include styles in your layout.

```html


@commentsStyles

```

Include scripts in your layout.

```html


@commentsScripts

```

Include the comments component with the related model.

```html

```

> [!Warning]
> You can omit the index part but make sure to include the double colon. Otherwise Laravel will search for the component in project instead of package.

```html

```

## Themes
You can change theme to your prefferred one. Consult documentation [here](https://lakm.gitbook.io/commenter/basics/themes) for more info.

## Demo

### Project
https://github.com/Lakshan-Madushanka/laravel-comments-demo

### Mini video
https://youtu.be/6CxgmvESsdc

### Full Video
https://youtu.be/dvFIOhSpmv8

> [!Note]
> This mini demo video provides a basic overview of Commenter. The full scope and features of Commenter are much more extensive. A comprehensive video will be published with the stable release.

## Changelog
Please see [CHANGELOG](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/CHANGELOG.md) for more information what has changed recently.

## Testing
```bash
./vendor/bin/pest
```

## Roadmap

|Feature | Status | Version |
|----------------------------------------------------------|------------------------|-------------------------------------------------------------------------------------|
|Comment/Reply Report | TBI | -
|Guest mode email verification | :white_check_mark: | [2.0.0](https://github.com/Lakshan-Madushanka/laravel-comments/releases/tag/2.0.0) |
|Dark Mode Support | :white_check_mark: | [2.0.0](https://github.com/Lakshan-Madushanka/laravel-comments/releases/tag/2.0.0) |

## Security
Please see [here](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/SECURITY.md) for our security policy.

## License
The MIT License (MIT). Please see [License File](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/LICENSE.md) for more information.

## Sponsor this project
You might think we're biased, but this is genuinely one of the best commenting systems available for paid or free (we doubt thereโ€™s a paid solution thatโ€™s as tailored to your needs as this one). We're dedicated to continuously improving this package and meeting your requirements. Isnโ€™t it reassuring to have a well-tested, feature-rich commenting system available for free for your Laravel projects?

We truly appreciate any sponsorship you offer. Your contribution is a direct investment in your future as well, with every penny supporting the growth of this project and other open-source initiatives.

If you find value in this project, please consider supporting it by visiting the sponsor page: https://github.com/sponsors/Lakshan-Madushanka. Your support means a lot ๐Ÿ’—!