PHPackages                             syofyanzuhad/filament-chatflow - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. syofyanzuhad/filament-chatflow

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

syofyanzuhad/filament-chatflow
==============================

A conversational chatbot flow builder plugin for Filament v3 with conditional logic and floating chat widget

v2.0.7(5mo ago)09[2 PRs](https://github.com/syofyanzuhad/filament-chatflow/pulls)MITPHPPHP ^8.2CI passing

Since Nov 22Pushed 1mo agoCompare

[ Source](https://github.com/syofyanzuhad/filament-chatflow)[ Packagist](https://packagist.org/packages/syofyanzuhad/filament-chatflow)[ Docs](https://github.com/syofyanzuhad/filament-chatflow)[ GitHub Sponsors](https://github.com/syofyanzuhad)[ RSS](/packages/syofyanzuhad-filament-chatflow/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (13)Versions (13)Used By (0)

Filament Chatflow
=================

[](#filament-chatflow)

[![Latest Version on Packagist](https://camo.githubusercontent.com/40643676239913a8ebac42f3657f6ade77ef0e2f3ab01bf155ff7337f2af7703/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f73796f6679616e7a756861642f66696c616d656e742d63686174666c6f772e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/syofyanzuhad/filament-chatflow)[![GitHub Tests Action Status](https://camo.githubusercontent.com/72171338bac7dc85238afbf5800a81ac177a038a5f4abd6966f62ee013c33c55/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f73796f6679616e7a756861642f66696c616d656e742d63686174666c6f772f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/syofyanzuhad/filament-chatflow/actions?query=workflow%3Arun-tests+branch%3Amain)[![GitHub Code Style Action Status](https://camo.githubusercontent.com/8fed4c99eed4180889b96e7d8e01cb65d9a759356768295a51d0a9d2b54b2b2b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f73796f6679616e7a756861642f66696c616d656e742d63686174666c6f772f6669782d7068702d636f64652d7374796c652d6973737565732e796d6c3f6272616e63683d6d61696e266c6162656c3d636f64652532307374796c65267374796c653d666c61742d737175617265)](https://github.com/syofyanzuhad/filament-chatflow/actions?query=workflow%3A%22Fix+PHP+code+styling%22+branch%3Amain)[![Total Downloads](https://camo.githubusercontent.com/98f4751f2a928c7aa1d3faa801a7395302d245fdff9b7a9ca26b239c1de9b6e4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f73796f6679616e7a756861642f66696c616d656e742d63686174666c6f772e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/syofyanzuhad/filament-chatflow)

A powerful conversational flow builder plugin for Filament v3. Create interactive chatbot experiences with conditional logic, multi-language support, and comprehensive analytics.

> **Note:** This is the stable branch for Filament v3. For Filament v4 support, use the [`v4`](https://github.com/syofyanzuhad/filament-chatflow/tree/v4) branch or install version `^2.0`.

Features
--------

[](#features)

- 🎨 **Visual Flow Builder** - Build chat flows with an intuitive form-based interface
- 💬 **Floating Chat Widget** - Beautiful, responsive chat widget that works on all pages
- 🌍 **Multi-Language Support** - Built-in support for multiple languages (English &amp; Indonesian included)
- 📊 **Analytics Dashboard** - Track conversation metrics, completion rates, and drop-off points
- 📧 **Email Transcripts** - Automatically send conversation transcripts via email
- 🎯 **Conditional Logic** - Create complex conversation flows with if-else branching
- 🔔 **Sound Notifications** - Optional sound notifications for new messages
- 🌙 **Dark Mode Support** - Full dark mode compatibility
- ⚡ **Rate Limiting** - Built-in API rate limiting for security
- 🧪 **Comprehensive Testing** - Full test coverage with Pest v4

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

[](#requirements)

- PHP 8.3 or higher
- Laravel 12.x
- Filament 3.x
- Livewire 3.x

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

[](#installation)

1. Install the package via composer:

```
composer require syofyanzuhad/filament-chatflow
```

2. Run the installation command:

```
php artisan filament-chatflow:install
```

This will publish the config file, migrations, and ask to run migrations.

Alternatively, you can publish and run the migrations manually:

```
php artisan vendor:publish --tag="filament-chatflow-migrations"
php artisan migrate
```

3. Register the plugin in your Filament Panel Provider:

```
use Syofyanzuhad\FilamentChatflow\FilamentChatflowPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        ->plugins([
            FilamentChatflowPlugin::make(),
        ]);
}
```

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

[](#configuration)

Publish the config file (if not already published):

```
php artisan vendor:publish --tag="filament-chatflow-config"
```

The config file contains options for:

- Widget appearance and behavior
- Conversation expiration settings
- Email transcript configuration
- Analytics settings
- Rate limiting
- Security options
- And more...

Usage
-----

[](#usage)

### Creating a Chatflow

[](#creating-a-chatflow)

1. Navigate to **Chatflow** in your Filament panel
2. Click **New Chatflow**
3. Fill in basic information:

    - Name
    - Description
    - Welcome message (multi-language supported)
    - Widget position (bottom-right, bottom-left, top-right, top-left)
    - Theme color
    - Email and notification settings
4. Click **Save** and you'll be redirected to the Flow Builder

### Building the Conversation Flow

[](#building-the-conversation-flow)

The Flow Builder allows you to create conversation steps:

1. **Message Steps** - Display information to users
2. **Question Steps** - Present options for users to choose
3. **End Steps** - Conclude the conversation

Each step supports:

- Multi-language content (English &amp; Indonesian by default)
- Nested child steps for complex flows
- Quick reply options with branching logic

Example flow structure:

```
Welcome Message
└── Question: "How can we help you?"
    ├── Option 1: "Product Inquiry"
    │   └── Message: "Visit our catalog..."
    ├── Option 2: "Technical Support"
    │   └── Question: "What issue?"
    │       ├── "Login Issue" → Solution steps
    │       └── "Performance" → Solution steps
    └── Option 3: "Other"
        └── Message: "Contact us..."

```

### Adding the Chat Widget to Your Frontend

[](#adding-the-chat-widget-to-your-frontend)

Add the chat widget to your layout blade file:

```

    @livewire('chatflow-widget', ['chatflow' => App\Models\Chatflow::find(1)])

```

Or use the chatflow ID directly:

```
@livewire('chatflow-widget', ['chatflow' => $chatflow])
```

### Viewing Conversations

[](#viewing-conversations)

Navigate to **Conversations** in your Filament panel to:

- View all conversation history
- Filter by chatflow, status, date range, or language
- See detailed message timelines
- Track user information and metadata

### Analytics Dashboard

[](#analytics-dashboard)

The Analytics widget on your dashboard shows:

- Total conversations
- Active conversations
- Completed today
- Average completion rate

Access detailed analytics in the Chatflow Resource to see:

- Completion rates over time
- Drop-off points (where users abandon)
- Popular conversation paths
- Hourly distribution

### API Endpoints

[](#api-endpoints)

The package provides API endpoints for programmatic access:

```
// Get chatflow configuration
GET /api/chatflow/{chatflow}/config

// Start a conversation
POST /api/chatflow/{chatflow}/start

// Send a message
POST /api/chatflow/message

// End a conversation
POST /api/chatflow/end

// Get conversation history
GET /api/chatflow/history
```

### Seeding Sample Data

[](#seeding-sample-data)

Run the seeder to create a sample customer support chatflow:

```
php artisan db:seed --class="Syofyanzuhad\\FilamentChatflow\\Database\\Seeders\\ChatflowSeeder"
```

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

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

[](#contributing)

Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Syofyan Zuhad](https://github.com/syofyanzuhad)
- [All Contributors](../../contributors)

License
-------

[](#license)

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

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance82

Actively maintained with recent releases

Popularity4

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 89.5% 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

10

Last Release

171d ago

Major Versions

v1.0.0 → v2.0.02025-11-22

v2.0.7 → v4.x-dev2025-11-23

PHP version history (2 changes)v1.0.0PHP ^8.1

v2.0.0PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/e1cac985174ded780c6587c27619150114b5ec3bb47ea0bb25696760c1a9fc86?d=identicon)[Syofyan Zuhad](/maintainers/Syofyan%20Zuhad)

---

Top Contributors

[![syofyanzuhad](https://avatars.githubusercontent.com/u/52684582?v=4)](https://github.com/syofyanzuhad "syofyanzuhad (17 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (1 commits)")

---

Tags

laravelsyofyanzuhadfilament-chatflow

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/syofyanzuhad-filament-chatflow/health.svg)

```
[![Health](https://phpackages.com/badges/syofyanzuhad-filament-chatflow/health.svg)](https://phpackages.com/packages/syofyanzuhad-filament-chatflow)
```

###  Alternatives

[guava/calendar

Adds support for vkurko/calendar to Filament PHP.

298241.0k3](/packages/guava-calendar)[bezhansalleh/filament-google-analytics

Google Analytics integration for FilamentPHP

205144.8k5](/packages/bezhansalleh-filament-google-analytics)[jibaymcs/filament-tour

Bring the power of DriverJs to your Filament panels and start a tour !

12247.8k](/packages/jibaymcs-filament-tour)[marcelweidum/filament-expiration-notice

Customize the livewire expiration notice

9169.0k4](/packages/marcelweidum-filament-expiration-notice)[hydrat/filament-table-layout-toggle

Filament plugin adding a toggle button to tables, allowing user to switch between Grid and Table layouts.

6292.3k1](/packages/hydrat-filament-table-layout-toggle)[outerweb/filament-settings

Filament integration for the outerweb/settings package

3690.9k4](/packages/outerweb-filament-settings)

PHPackages © 2026

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