misaf / vendra-multimedia
Package info
github.com/misaf/vendra-multimedia
Type:vendra-module
pkg:composer/misaf/vendra-multimedia
v1.0.1
2026-07-06 21:45 UTC
Requires
- php: ^8.3
- awcodes/filament-badgeable-column: ^4.0
- filament/filament: ^5.0
- illuminate/support: ^13.0
- misaf/filament-jalali: ^5.1
- misaf/vendra-support: ^1.0.0
- spatie/laravel-medialibrary: ^11.0
- spatie/laravel-package-tools: ^1.0
Requires (Dev)
- larastan/larastan: ^3.0
- laravel/boost: ^2.0
- laravel/pint: ^1.0
- misaf/vendra-testing: ^1.0.0
- mockery/mockery: ^1.0
- nunomaduro/collision: ^8.0
- orchestra/testbench: ^11.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-arch: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- pestphp/pest-plugin-profanity: ^4.0
- pestphp/pest-plugin-type-coverage: ^4.0
- phpstan/extension-installer: ^1.4
This package is auto-updated.
Last update: 2026-07-07 20:43:58 UTC
README
Tenant-aware media management for Vendra applications.
Features
- Tenant-scoped Spatie Media Library model
- UUID-based media storage paths
- Default WebP media conversions helper
- Filament resource and optional widget on the
adminpanel - Translation and migration publishing support
Requirements
- PHP 8.3+
- Laravel 12 or 13
- Filament 5
- Livewire 4
- Pest 4
misaf/vendra-tenantmisaf/vendra-userspatie/laravel-medialibrary
Installation
composer require misaf/vendra-multimedia php artisan vendor:publish --tag=medialibrary-migrations php artisan vendor:publish --tag=vendra-multimedia-migrations php artisan migrate
Set the media model and path generator in config/media-library.php:
'media_model' => \Misaf\VendraMultimedia\Models\Multimedia::class, 'path_generator' => \Misaf\VendraMultimedia\Support\DefaultPathGenerator::class,
Optional translations publish:
php artisan vendor:publish --tag=vendra-multimedia-translations
Usage
Use Spatie Media Library as usual:
$model ->addMedia($pathToFile) ->toMediaCollection('default');
Models can reuse the default conversions:
use Misaf\VendraMultimedia\Concerns\HasDefaultMediaConversions; class Product extends Model implements HasMedia { use HasDefaultMediaConversions; use InteractsWithMedia; }
In Filament, media records are available on the admin panel.
Testing
composer test
License
MIT. See LICENSE.