Android-style Chat Heads for Filament panels with real-time messaging, file sharing, and presence tracking
aaix/filament-chat-bubbles is a Laravel package for android-style chat heads for filament panels with real-time messaging, file sharing, and presence tracking.
It currently has 4 GitHub stars and 48 downloads on Packagist (latest version v1.0.6).
Install it with composer require aaix/filament-chat-bubbles.
Discover more Laravel packages by aaix
or browse all Laravel packages to compare alternatives.
Last updated
Chat Heads for Filament panels with real-time messaging, file sharing, and presence tracking.
Filament Chat Bubbles brings a complete real-time messaging experience to your Filament panel. Floating chat heads, a slide-over modal, and a dedicated full-page view β all powered by Laravel Echo with zero npm dependencies in the host project.
Full-page messages view with sidebar, search, and cross-pattern background
Floating chat bubbles Β· Slide-over modal
Ctrl+E code, Ctrl+B bold, Ctrl+I italic, Arrow-Up edit last, Escape cancel.You can install the package via Composer:
composer require aaix/filament-chat-bubbles
Run migrations and publish assets:
php artisan migrate
php artisan filament:assets
Add the package views to your panel's theme CSS so Tailwind picks up all utility classes:
/* resources/css/filament/admin/theme.css */
@source '../../../../vendor/aaix/filament-chat-bubbles/resources/views/**/*';
Then rebuild your theme:
npm run build
Optionally publish the configuration:
php artisan vendor:publish --tag=filament-chat-bubbles-config
Optionally publish the notification sound:
php artisan vendor:publish --tag=filament-chat-bubbles-assets
Register the plugin in your Filament panel provider:
use Aaix\FilamentChatBubbles\ChatBubblesPlugin;
public function panel(Panel $panel): Panel
{
return $panel
->plugins([
ChatBubblesPlugin::make(),
]);
}
Ensure broadcasting is configured:
php artisan install:broadcasting
Create the storage symlink (for file attachments):
php artisan storage:link
That's it. Chat bubbles will appear in the bottom-right corner of your panel, and the slide-over is accessible from the topbar.
The configuration file (config/filament-chat-bubbles.php) allows you to customize:
| Option | Default | Description |
|--------|---------|-------------|
| user_model | App\Models\User | Your User model class |
| user_name_attribute | name | Attribute used for display name |
| user_avatar_attribute | profile_picture_url | Attribute used for avatar URL |
| table_prefix | fcb_ | Database table prefix |
| bubble_size | 48 | Bubble diameter in pixels |
| max_message_length | 5000 | Maximum message body length |
| attachments.disk | public | Storage disk for file uploads |
| attachments.max_size | 50 MB | Maximum upload file size |
| attachments.max_per_message | 20 | Maximum attachments per message |
| link_previews.enabled | true | Enable link preview fetching |
| presence.enabled | true | Enable online/idle tracking |
| presence.idle_after | 300 | Seconds before user is marked idle |
composer install
php artisan test --filter=ChatBubbles
Contributions are welcome! Please open an issue or submit a pull request.
The MIT License (MIT). Please see License File for more information.