PHPackages                             aaix/filament-chat-bubbles - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. aaix/filament-chat-bubbles

ActiveLibrary[HTTP &amp; Networking](/categories/http)

aaix/filament-chat-bubbles
==========================

Android-style Chat Heads for Filament panels with real-time messaging, file sharing, and presence tracking

v1.0.6(1mo ago)237↓75%1[1 PRs](https://github.com/jonaaix/filament-chat-bubbles/pulls)MITBladePHP ^8.2

Since Apr 12Pushed 1mo agoCompare

[ Source](https://github.com/jonaaix/filament-chat-bubbles)[ Packagist](https://packagist.org/packages/aaix/filament-chat-bubbles)[ Docs](https://github.com/aaix/filament-chat-bubbles)[ RSS](/packages/aaix-filament-chat-bubbles/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (3)Versions (8)Used By (0)

Filament Chat Bubbles
=====================

[](#filament-chat-bubbles)

Chat Heads for Filament panels with real-time messaging, file sharing, and presence tracking.

 [![Latest Version on Packagist](https://camo.githubusercontent.com/c2967d0fce398bdc38218eb2796f9d826d069902cef076b69ad05b21a4648052/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f616169782f66696c616d656e742d636861742d627562626c65732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/aaix/filament-chat-bubbles) [![Total Downloads](https://camo.githubusercontent.com/a9d0828c79935e530762ba01e393ef6f4a85bfd9c290651b93ecdbbd69bcd9b2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f616169782f66696c616d656e742d636861742d627562626c65732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/aaix/filament-chat-bubbles) [![License](https://camo.githubusercontent.com/b49fab01c111e1fbd0497dcf9808db8ed8306af30b69a6955bc8399b93ca0ce4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f616169782f66696c616d656e742d636861742d627562626c65732e7376673f7374796c653d666c61742d737175617265)](https://github.com/aaix/filament-chat-bubbles/blob/main/LICENSE)

---

**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.

Screenshots
-----------

[](#screenshots)

 [![Messages Page](docs/screenshots/messages.jpg)](docs/screenshots/messages.jpg)
*Full-page messages view with sidebar, search, and cross-pattern background*

 [![Floating Chat Bubbles](docs/screenshots/bubbles.jpg)](docs/screenshots/bubbles.jpg) [![Slide-Over Chat](docs/screenshots/slideover.jpg)](docs/screenshots/slideover.jpg)
*Floating chat bubbles · Slide-over modal*

Key Features
------------

[](#key-features)

- **💬 Floating Bubbles:** Draggable, dockable chat heads with edge snapping and drag-drop sorting.
- **📱 Slide-Over Modal:** Conversation list, chat detail, group management, and settings in one panel.
- **🖥️ Full-Page Messages:** Dedicated Filament page with sidebar, search panel, and cross-pattern background.
- **⚡ Real-Time:** Typing indicators, presence channels, and instant message delivery via Echo/Reverb.
- **📎 File Attachments:** Images, documents, and videos with AVIF thumbnails, grid layout, and lightbox gallery.
- **🔗 Link Previews:** Automatic OG meta fetching with inline preview cards.
- **😀 Emoji Picker:** Full categorized picker loaded via CDN. Large emoji rendering for emoji-only messages.
- **🟢 Online Status:** Presence dots, idle detection, heartbeat, and "last seen" timestamps.
- **🔍 Search:** Conversation-scoped and global message search with highlighted results.
- **✏️ Rich Messaging:** Reply-to, edit, delete, emoji reactions, inline markdown, and code blocks.
- **👥 Groups:** Create, rename, and manage group conversations with member count and online indicators.
- **⌨️ Keyboard Shortcuts:** `Ctrl+E` code, `Ctrl+B` bold, `Ctrl+I` italic, `Arrow-Up` edit last, `Escape` cancel.

Requirements
------------

[](#requirements)

- PHP 8.2+
- Laravel 12+
- Filament 5+
- Laravel Echo + Reverb (or Pusher/Ably)
- Intervention Image 3+

Installation
------------

[](#installation)

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
```

Quick Setup
-----------

[](#quick-setup)

1. **Register the plugin** in your Filament panel provider:

    ```
    use Aaix\FilamentChatBubbles\ChatBubblesPlugin;

    public function panel(Panel $panel): Panel
    {
        return $panel
            ->plugins([
                ChatBubblesPlugin::make(),
            ]);
    }
    ```
2. **Ensure broadcasting is configured:**

    ```
    php artisan install:broadcasting
    ```
3. **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.

Configuration
-------------

[](#configuration)

The configuration file (`config/filament-chat-bubbles.php`) allows you to customize:

OptionDefaultDescription`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 idleTesting
-------

[](#testing)

```
composer install
php artisan test --filter=ChatBubbles
```

Contributing
------------

[](#contributing)

Contributions are welcome! Please open an issue or submit a pull request.

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

43

—

FairBetter than 89% of packages

Maintenance89

Actively maintained with recent releases

Popularity14

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

7

Last Release

57d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/8d8ec042829e0d4060243b6c1067768dd31773ace52982c6ac4a4fbef207cbfd?d=identicon)[aaix](/maintainers/aaix)

---

Top Contributors

[![jonaaix](https://avatars.githubusercontent.com/u/15804690?v=4)](https://github.com/jonaaix "jonaaix (8 commits)")

---

Tags

laravelwebsocketreal-timelivewiremessagingchatfilamentalpinebubbles

### Embed Badge

![Health badge](/badges/aaix-filament-chat-bubbles/health.svg)

```
[![Health](https://phpackages.com/badges/aaix-filament-chat-bubbles/health.svg)](https://phpackages.com/packages/aaix-filament-chat-bubbles)
```

###  Alternatives

[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3913.7k](/packages/rawilk-profile-filament-plugin)[stephenjude/filament-jetstream

A Laravel starter kit built with Filament inspired by Jetstream.

17758.9k2](/packages/stephenjude-filament-jetstream)[stephenjude/filament-two-factor-authentication

Filament Two Factor Authentication: Google 2FA + Passkey Authentication

84192.9k7](/packages/stephenjude-filament-two-factor-authentication)[marcelweidum/filament-passkeys

Use passkeys in your filamentphp app

6643.3k](/packages/marcelweidum-filament-passkeys)[basement-chat/basement-chat

Add a real-time chat widget to your Laravel application.

4984.0k](/packages/basement-chat-basement-chat)[mradder/filament-logger

Audit logging, activity tracking, exports, alerts, and dashboards for Filament admin panels.

2210.5k](/packages/mradder-filament-logger)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
