Are you looking to add a real-time chat feature to your Laravel application? Look no further! Introducing Basement Chat, a powerful and flexible chat widget package specifically built for Laravel using PHP, TypeScript, Alpine.js, and Tailwind CSS. With Basement Chat, you can enhance user engagement and provide seamless communication within your application.
Features that Elevate Your Chat Experience
Basement Chat offers a range of features designed to create a smooth and interactive chat environment. Here’s what you can expect:
- Real-Time Messages: Experience instantaneous message delivery, allowing users to communicate in real-time.
- User’s Online Status: Know when your users are online or offline with the user’s online status indicator.
- User’s Typing Indicator: Keep users informed by displaying a typing indicator when someone is composing a message.
- Messages Have Been Read Status: Easily track which messages have been read by recipients, providing a clear indication of communication progress.
- Configurable Push Notifications: Enable push notifications to alert users of new messages, ensuring they never miss an important conversation.
- Searchable Contacts and Messages: Seamlessly search through contacts and messages to quickly find relevant information.
- Extendable and Customizable Actions: Tailor the chat behavior to your application’s unique requirements by extending and customizing actions.
- Lazy Loading with Infinite Scroll: Optimize performance by implementing lazy loading with infinite scroll for loading messages on demand.
- Intuitive and Attractive Design: Enjoy a visually appealing and user-friendly design crafted using Tailwind CSS and Alpine.js.
- Compatible with CSS Frontend Frameworks: Use Basement Chat effortlessly with various CSS frontend frameworks such as Bootstrap and Tailwind CSS, eliminating style conflicts.
Flexible Broadcast Driver Support
Basement Chat provides flexibility by supporting multiple broadcast drivers. Whether you prefer to use Pusher, Ably, Soketi, Laravel Websockets, or any other Laravel-supported broadcast driver, Basement Chat seamlessly integrates with your choice.
Easy Installation and Integration
Getting started with Basement Chat is quick and hassle-free. Here’s a step-by-step guide:
- Ensure you have the server-side requirements: PHP ^8.0 and Laravel/Framework ^9.0.0 | ^10.0.0 installed in your project.
- Confirm that your client side meets the compatibility requirements: Chrome >= 80, Edge >= 80, Firefox >= 74, or equivalent.
- Open your terminal and navigate to your Laravel project directory.
- Install Basement Chat using the following command:
composer require basement-chat/basement-chat
php artisan basement:install
This command will publish the necessary configuration, assets, and migration files to your Laravel application. During the installation process, you will be prompted with interactive questions, including selecting the broadcast driver of your choice.
Loading the Basement Chat Component into Your Views
To add the chat box component to your views, follow these steps:
- Locate the .blade view file where the user is logged in. For example, if you are using Laravel Breeze, the path should be
- Within the view file, add the following line before the closing
Now, you are all set to provide a seamless chat experience within your Laravel application using Basement Chat.
To see Basement Chat in action, you can explore the demo at https://basement.up.railway.app/.
Basement Chat is a comprehensive real-time chat widget package for Laravel applications. With its wide range of features, flexibility in broadcast driver support, and easy integration process, it empowers you to enhance communication within your application. Whether you need to enable real-time messaging, track message statuses, or offer configurable push notifications, Basement Chat has got you covered. Start leveraging the power of Basement Chat to revolutionize the way users interact within your Laravel application.