Meilisearch plugin screenshot
Dark mode ready
No multilingual support
Supports v5.x

Meilisearch by Kyle Anderson

Community

A comprehensive Filament plugin for managing Meilisearch instances directly from your Filament admin panel. Inspired by meiliweb.

Tags: Developer Tool
Supported versions:
5.x 4.x
Kyle Anderson avatar Author: Kyle Anderson

Package health

Automated checks of this plugin's Composer package

92 / 100
Security 85
Maintenance 100
Ecosystem 100
15 checks
  • Skipped: GitHub Actions pinned to SHA
  • Skipped: GitLab CI includes pinned to SHA
  • Passed: Open security advisories
  • Passed: Dependabot PR responsiveness — No open Dependabot PRs.
  • Skipped: Renovate MR responsiveness
  • Skipped: Dependabot or Renovate configured
  • Skipped: Dependency update cooldown configured
  • Failed: Provides a security policy — View details on Plumb
  • Passed: Abandoned or archived — No consulted source marks the package abandoned (packagist, github).
  • Passed: Commit and release recency — Active: last commit 52 days ago; last release 52 days ago.
  • Passed: composer.lock not committed by library — composer.lock is absent from the released dist archive.
  • Passed: Dist archive is lean
  • Passed: Current Laravel version supported — Package dependencies resolve together with current Laravel 13.0.
  • Passed: Current PHP version supported — Constraint ^8.1 supports current PHP 8.5.
  • Skipped: Current Symfony version supported
Third-party plugin. This is built by the community, not the Filament team. Filament does not review, endorse, or vet the security of plugins outside the filament/ namespace. Review the source and install at your own risk. Found malware or an unresolved security issue the author won't address? Report it .
Powered by Plumb Last scanned 3 months ago

Documentation

Filament Meilisearch Plugin

A comprehensive Filament plugin for managing Meilisearch instances directly from your Filament admin panel. Inspired by meiliweb.

#Features

  • Dashboard - Overview of your Meilisearch instance health, version, and statistics
  • Indexes Management - Create, view, and delete indexes
  • Documents Management - Add, search, view, and delete documents
  • API Keys Management - Create and manage Meilisearch API keys with granular permissions
  • Tasks Monitoring - View and manage background tasks
  • Dumps - Create database dumps for backup
  • Snapshots - Create point-in-time snapshots
  • Index Settings - View and manage index configuration

#Requirements

  • PHP 8.1+
  • Laravel 9.0+ | 10.0+ | 11.0+
  • Filament v4.0+|v5.0+
  • Meilisearch PHP SDK ^1.6

#Installation

composer require lancodev/filament-meilisearch

Publish the configuration file:

php artisan vendor:publish --tag="filament-meilisearch-config"

#Configuration

Add your Meilisearch connection details to your .env file:

MEILISEARCH_HOST=http://localhost:7700
MEILISEARCH_KEY=your-master-key

Or publish and edit the config file at config/filament-meilisearch.php:

return [
    'host' => env('MEILISEARCH_HOST', 'http://localhost:7700'),
    'key' => env('MEILISEARCH_KEY', null),
    
    'navigation' => [
        'group' => 'Meilisearch',
        'icon' => 'heroicon-o-magnifying-glass',
        'sort' => 0,
    ],
    
    'features' => [
        'indexes' => true,
        'documents' => true,
        'keys' => true,
        'tasks' => true,
        'dumps' => true,
        'snapshots' => true,
        'settings' => true,
    ],
];

#Usage

#Register the Plugin

In your Filament panel provider (typically app/Providers/Filament/AdminPanelProvider.php):

use Lancodev\FilamentMeilisearch\MeilisearchPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        // ...
        ->plugins([
            MeilisearchPlugin::make()
                ->navigationGroup('Search')
                ->navigationIcon('heroicon-o-magnifying-glass')
                ->navigationSort(10)
                ->features([
                    'indexes' => true,
                    'documents' => true,
                    'keys' => true,
                    'tasks' => true,
                    'dumps' => true,
                    'snapshots' => true,
                    'settings' => true,
                ]),
        ]);
}

#Customizing Features

You can enable or disable specific features:

MeilisearchPlugin::make()
    ->features([
        'indexes' => true,
        'documents' => true,
        'keys' => false,      // Disable API keys management
        'tasks' => true,
        'dumps' => false,     // Disable dumps
        'snapshots' => false, // Disable snapshots
        'settings' => true,
    ])

#Limiting Visible Indexes

By default, all indexes in your Meilisearch instance are shown. You can restrict which indexes are visible in the admin panel:

Via the plugin registration:

MeilisearchPlugin::make()
    ->allowedIndexes(['products', 'users', 'orders']);

Via the config file:

// config/filament-meilisearch.php
'allowed_indexes' => ['products', 'users', 'orders'],

Via the .env file:

FILAMENT_MEILISEARCH_ALLOWED_INDEXES=products,users,orders

When set, only the listed indexes will appear in the Dashboard, Indexes, and API Keys pages. Set to null (or omit) to show all indexes.

#Security

Important: Ensure your Meilisearch instance is properly secured. This plugin requires a Meilisearch API key with appropriate permissions. We recommend:

  • Using environment variables for sensitive configuration
  • Restricting access to the Meilisearch admin panel to authorized users only
  • Using Meilisearch's built-in API key management for granular permissions
  • Never committing API keys to version control

#License

MIT License. See LICENSE for details.

#Credits

Inspired by meiliweb by Benoît Polaszek.

The author

Kyle Anderson avatar Author: Kyle Anderson

Kyle Anderson is a Senior Software Engineer with extensive experience building web and mobile applications using PHP, Laravel, Livewire, Vue, and Tailwind CSS. He specializes in architecting scalable cloud-native solutions on AWS and enjoys creating developer tools, plugins, and packages that improve the Laravel and FilamentPHP ecosystem. When he's not building software, Kyle can usually be found experimenting with new technologies, contributing to open-source projects, or working on one of his many side projects.

Plugins
1
Stars
3