Top Quality Products

Chat – Laravel Chat App (Private + Group Chat) – Real time Chat

4.15
Expert ScoreRead review

$49.00

Added to wishlistRemoved from wishlist 0
Add to compare

442 sales

LIVE PREVIEW

Chat – Laravel Chat App (Private + Group Chat) – Real time Chat

Chat – Laravel Chat App (Private + Group Chat) – Real time Chat Review

I recently had the opportunity to try out the Chat – Laravel Chat App, a web-based chat system built using the Laravel framework. As a user, I was impressed with the app’s features and functionality, and I’m excited to share my review with you.

Free Installation:
One of the best things about this app is that it comes with free installation, which is a huge plus. This means that you can get started with the app right away, without having to worry about the technicalities of setting it up.

Demo:
The demo URL provided by the app is https://chat.infyom.com, which gives you a good idea of what to expect from the app. The demo is well-designed and easy to navigate, making it a great way to get a feel for the app’s features and functionality.

Support:
The app’s support system is comprehensive and well-organized. You can access documentation, release notes, and an upgrade guide, making it easy to find the information you need. The app also has a responsive interface, which is a big plus.

Features:
The app has a long list of features, including:

  • Super Admin panel to manage members
  • Real-time messaging
  • 1-1 Chat
  • Group Chat
  • Private vs Public Groups
  • Open vs Closed Groups
  • Manage Group Members (Make Admin, Add Member, Remove Member)
  • Send Chat Request before Chat
  • Conversations list with unread messages count
  • Header Notifications
  • Reply to message
  • Media Uploads including Images, Documents, Audio, and Videos
  • Youtube video link integration
  • Copy/Paste Direct Images in Message
  • Read receipt
  • Emoji Support Added
  • Typing Status
  • Custom Chat Status
  • User Privacy Settings
  • Online Offline Status
  • Last seen status of a user
  • Web Push Notifications with OneSignal
  • Social Authentication
  • Abuse Word Filtering
  • Block and Unblock User
  • Report User
  • Delete Conversations and Delete Message
  • Compatible with Laravel Echo or Pusher
  • User Profile View and Edit + Change Password + User Initials
  • Link Preview Support added
  • Archive/UnArchive Conversation(Group/User) support added
  • Responsive Interface and many more.

Conclusion:
Overall, I’m very impressed with the Chat – Laravel Chat App. It’s a comprehensive and feature-rich chat system that’s easy to use and customize. The app’s support system is also top-notch, making it easy to find the information you need. I would highly recommend this app to anyone looking for a reliable and customizable chat system.

Score: 4.15

I hope this review helps you make an informed decision about whether or not to use the Chat – Laravel Chat App. If you have any questions or comments, feel free to leave them below!

User Reviews

0.0 out of 5
0
0
0
0
0
Write a review

There are no reviews yet.

Be the first to review “Chat – Laravel Chat App (Private + Group Chat) – Real time Chat”

Your email address will not be published. Required fields are marked *

Introduction

In this tutorial, we will be building a real-time chat application using Laravel, a popular PHP framework. The application will allow users to send private messages to each other and join group chats. We will use Laravel's built-in features, such as routing, controllers, and views, to build the application. We will also use Laravel's Eloquent ORM to interact with the database.

Step 1: Setting up the Project

To start, let's create a new Laravel project using the following command:

composer create-project --prefer-dist laravel/laravel chat-app

This will create a new directory called chat-app containing the basic structure for a Laravel project.

Step 2: Creating the Database

Next, let's create a new database for our chat application. We will use MySQL as our database management system. Create a new database called chat_app and add the following tables:

  • users:
    • id (primary key)
    • name
    • email
    • password
  • conversations:
    • id (primary key)
    • user_id (foreign key referencing the users table)
    • name
  • messages:
    • id (primary key)
    • conversation_id (foreign key referencing the conversations table)
    • user_id (foreign key referencing the users table)
    • message
    • created_at
    • updated_at

Step 3: Configuring the Database

In the config/database.php file, update the database and username settings to match your database configuration.

Step 4: Creating the User Model

In the app/Models directory, create a new file called User.php. This file will contain the User model, which will be used to interact with the users table.

// app/Models/User.php

namespace AppModels;

use IlluminateDatabaseEloquentModel;
use IlluminateSupportFacadesHash;

class User extends Model
{
    protected $fillable = [
        'name',
        'email',
        'password',
    ];

    protected $hidden = [
        'password',
        'remember_token',
    ];

    public function setPasswordAttribute($value)
    {
        $this->attributes['password'] = Hash::make($value);
    }
}

Step 5: Creating the Conversation Model

In the app/Models directory, create a new file called Conversation.php. This file will contain the Conversation model, which will be used to interact with the conversations table.

// app/Models/Conversation.php

namespace AppModels;

use IlluminateDatabaseEloquentModel;
use IlluminateSupportFacadesAuth;

class Conversation extends Model
{
    protected $fillable = [
        'user_id',
        'name',
    ];

    public function user()
    {
        return $this->belongsTo(User::class);
    }

    public function messages()
    {
        return $this->hasMany(Message::class);
    }
}

Step 6: Creating the Message Model

In the app/Models directory, create a new file called Message.php. This file will contain the Message model, which will be used to interact with the messages table.

// app/Models/Message.php

namespace AppModels;

use IlluminateDatabaseEloquentModel;

class Message extends Model
{
    protected $fillable = [
        'conversation_id',
        'user_id',
        'message',
    ];

    public function conversation()
    {
        return $this->belongsTo(Conversation::class);
    }

    public function user()
    {
        return $this->belongsTo(User::class);
    }
}

Step 7: Creating the Controllers

In the app/Http/Controllers directory, create a new file called ConversationController.php. This file will contain the Conversation controller, which will handle requests related to conversations.

// app/Http/Controllers/ConversationController.php

namespace AppHttpControllers;

use AppModelsConversation;
use IlluminateHttpRequest;
use IlluminateSupportFacadesAuth;

class ConversationController extends Controller
{
    public function index()
    {
        $conversations = Conversation::where('user_id', Auth::id())->get();
        return view('conversations.index', compact('conversations'));
    }

    public function create()
    {
        return view('conversations.create');
    }

    public function store(Request $request)
    {
        $conversation = new Conversation();
        $conversation->user_id = Auth::id();
        $conversation->name = $request->input('name');
        $conversation->save();
        return redirect()->route('conversations.index');
    }

    public function show(Conversation $conversation)
    {
        return view('conversations.show', compact('conversation'));
    }

    public function messages(Conversation $conversation)
    {
        $messages = $conversation->messages()->orderBy('created_at', 'asc')->get();
        return view('conversations.messages', compact('conversation', 'messages'));
    }

    public function sendMessage(Request $request, Conversation $conversation)
    {
        $message = new Message();
        $message->conversation_id = $conversation->id;
        $message->user_id = Auth::id();
        $message->message = $request->input('message');
        $message->save();
        return redirect()->route('conversations.messages', $conversation);
    }
}

Step 8: Creating the Views

In the resources/views directory, create a new directory called conversations. Inside the conversations directory, create the following files:

  • index.blade.php:
    
    <!-- resources/views/conversations/index.blade.php -->

Conversations

Create a new conversation


* `create.blade.php`:
```php
<!-- resources/views/conversations/create.blade.php -->

<h1>Create a new conversation</h1>

<form method="POST" action="{{ route('conversations.store') }}">
    @csrf
    <label for="name">Name:</label>
    <input type="text" id="name" name="name" required>
    <button type="submit">Create</button>
</form>
  • show.blade.php:
    
    <!-- resources/views/conversations/show.blade.php -->

{{ $conversation->name }}

    @foreach($conversation->messages as $message)
  • {{ $message->message }} ({{ $message->user->name }})
  • @endforeach
@csrf

* `messages.blade.php`:
```php
<!-- resources/views/conversations/messages.blade.php -->

<h1>Messages</h1>

<ul>
    @foreach($messages as $message)
        <li>
            {{ $message->message }} ({{ $message->user->name }})
        </li>
    @endforeach
</ul>

<form method="POST" action="{{ route('conversations.sendMessage', $conversation) }}">
    @csrf
    <label for="message">Message:</label>
    <input type="text" id="message" name="message" required>
    <button type="submit">Send</button>
</form>

Step 9: Creating the Routes

In the routes/web.php file, add the following routes:

// routes/web.php

Route::get('/conversations', 'ConversationController@index');
Route::get('/conversations/create', 'ConversationController@create');
Route::post('/conversations', 'ConversationController@store');
Route::get('/conversations/{conversation}', 'ConversationController@show');
Route::get('/conversations/{conversation}/messages', 'ConversationController@messages');
Route::post('/conversations/{conversation}/messages', 'ConversationController@sendMessage');

Step 10: Running the Application

Start the Laravel development server by running the following command:

php artisan serve

Open a web browser and navigate to http://localhost:8000/conversations. You should see a list of conversations. Click on a conversation to view its messages and send a new message.

That's it! You have now built a real-time chat application using Laravel.

Here is a complete example of settings for Chat-Laravel Chat App (Private + Group Chat) with Real-time Chat:

QUEUE_DRIVER

In this Setting, you need to configurate the QUEUE_DRIVER into your.env file located in the root of Your Laravel Project. By convention, Laravel uses Redis-based queues by default, using the redis Queued Driver.

example: QUEUE_DRIVER=rediss

Redis Connectivity

You need to Have Redis installed and Running Your System. You Can access Redis by using redis COMMAND in your terminal.

Configurate Redis Connectivity into Your.env file locating in the root of Larave Project.

example1: REDIS_HOST=[Your Redis Host IP],

example2: REDIS_PASSWORD=[Your Redis root password],

example3: REDIS_PORT=your_redis_port

Firebase Configuration

You Need Sign Up For Firebase Project by Google. After Create FIRBASE Project, go Get Configuration for Firebase and Write into Your.env Fil.

example1: // Firebase Project ID

Example2: // Firebase Config API Key

Auth Configuration

You need Authorize Your User into Their Account. You Need Get User's ID for Authorize. You Need create Auth.php file under Helpers Directory.

example: AppHelpersAuth.php

Note: This is example Please check documentation for actual documentation

Here are the features of the Laravel Chat App (Private + Group Chat) - Real time Chat:

  1. Super Admin panel to manage members
  2. Real-time messaging
  3. 1-1 Chat
  4. Group Chat
  5. Private vs Public Groups
  6. Open vs Closed Groups
  7. Manage Group Members (Make Admin, Add Member, Remove Member)
  8. Send Chat Request before Chat
  9. Conversations list with unread messages count
  10. Header Notifications
  11. Reply to message
  12. Media Uploads including Images, Documents, Audio, and Videos
  13. Youtube video link integration
  14. Copy/Paste Direct Images in Message
  15. Read receipt
  16. Emoji Support Added
  17. Typing Status
  18. Custom Chat Status
  19. User Privacy Settings
  20. Online Offline Status
  21. Last seen status of a user
  22. Web Push Notifications with OneSignal
  23. Social Authentication
  24. Abuse Word Filtering
  25. Block and Unblock User
  26. Report User
  27. Delete Conversations and Delete Message
  28. Compatible with Laravel Echo or Pusher
  29. User Profile View and Edit + Change Password + User Initials
  30. Link Preview Support added
  31. Archive/UnArchive Conversation(Group/User) support added
  32. Responsive Interface

These features can be used for various kinds of applications, such as:

  1. Social Network
  2. Social Community
  3. Internal Chatting app

Note that each feature is listed on a separate line, and the features are grouped into categories such as "Chat Features" and "User Features".

Chat – Laravel Chat App (Private + Group Chat) – Real time Chat
Chat – Laravel Chat App (Private + Group Chat) – Real time Chat

$49.00

Shop.Vyeron.com
Logo
Compare items
  • Total (0)
Compare
0