Configuration
After publishing, config/media.php contains all package settings. The most commonly overridden keys are shown below.
Disk and storage
'disk' => env('MEDIA_FILESYSTEM_DISK', 'media'),
// Disks that serve files directly (CDN / object storage).
// Glide is bypassed for originals on these disks.
'cloud_disks' => [],
Set MEDIA_FILESYSTEM_DISK in your .env to point at any configured Laravel filesystem disk.
Model
'model' => \Codezone\MediaZone\Models\Media::class,
Point this at your own model to extend the base. See Custom Model.
Accepted file types and size
'accepted_file_types' => [
'image/jpeg',
'image/png',
'image/webp',
'image/svg+xml',
'application/pdf',
'video/mp4',
'video/quicktime',
],
'max_size' => 102400, // kilobytes
'min_size' => 0,
Glide image server
'glide' => [
'server' => \Codezone\MediaZone\Services\GlideServerFactory::class,
'driver' => env('MEDIA_GLIDE_DRIVER', 'imagick'), // 'imagick' or 'gd'
'fallbacks' => [],
'route_path' => env('MEDIA_GLIDE_ROUTE', 'media'),
'route_middleware' => ['web'],
],
See Glide for full details.
Cropper
'crop_presets' => [], // \App\Media\Crops\MyPreset::class, ...
'crop_locations' => [], // \App\Media\Locations\MyLocation::class, ...
'crop_formats' => ['jpg', 'jpeg', 'webp', 'png', 'avif'],
'breakpoints' => [
'mobile' => 767,
'tablet' => 1174,
],
See Crop Presets and Crop Locations.
Filament resource
'resources' => [
'label' => 'Media',
'plural_label' => 'Media',
'navigation_group' => 'Content',
'navigation_icon' => 'heroicon-o-photo',
'navigation_sort' => 3,
'navigation_count_badge' => false,
'cluster' => null,
'resource' => \Codezone\MediaZone\Filament\Resources\MediaResource::class,
],
Picker
'picker' => [
// Extra pivot columns synced when attaching media to a model
'pivot_columns' => [],
],
See Pivot Columns.
Tabs
'tabs' => [
'display_crop' => true,
'display_upload_new' => true,
],
Multi-select modifier key
'multi_select_key' => 'metaKey', // 'metaKey' (⌘) or 'ctrlKey'
Last modified: 26 June 2026