A S3-compatible file browser to list, delete and upload files on any configured disks
mydnic/filament-file-browser is a Laravel package for a s3-compatible file browser to list, delete and upload files on any configured disks.
It currently has 2 GitHub stars and 718 downloads on Packagist (latest version v2.0.2).
Install it with composer require mydnic/filament-file-browser.
Discover more Laravel packages by mydnic
or browse all Laravel packages to compare alternatives.
Last updated
A clean and modern file browser plugin for Filament that allows you to browse, upload, and manage files across different filesystem disks, including S3 buckets. The interface mimics traditional OS file explorers like Dolphin on Linux.
Install the package via Composer:
composer require mydnic/filament-file-browser
Publish the configuration file:
php artisan vendor:publish --tag="filament-file-browser-config"
Add the plugin to your Filament panel in your PanelProvider:
use Mydnic\FilamentFileBrowser\FilamentFileBrowserPlugin;
public function panel(Panel $panel): Panel
{
return $panel
// ... other configuration
->plugins([
FilamentFileBrowserPlugin::make(),
]);
}
The plugin can be configured via the published configuration file config/filament-file-browser.php:
return [
// The default disk to use when the file browser is first loaded
'default_disk' => 'public',
// Navigation settings
'navigation_group' => 'Files',
'navigation_sort' => 0,
// Temporary directory for zip downloads
'temp_directory' => storage_path('app/temp'),
// Maximum upload file size in MB
'max_upload_size' => 10,
// Allowed file extensions for upload (empty array means all extensions are allowed)
'allowed_extensions' => [],
// Disks to show in the file browser (empty array means all disks are shown)
'disks' => [],
];
Make sure your filesystem disks are properly configured in config/filesystems.php. For S3:
'disks' => [
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION'),
'bucket' => env('AWS_BUCKET'),
'url' => env('AWS_URL'),
'endpoint' => env('AWS_ENDPOINT'),
'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false),
],
],
The plugin follows a clean, modern architecture:
The MIT License (MIT). Please see License File for more information.