drpshtiwan/livewire-media-selector
A lightweight WordPress-style media selector for Laravel and Livewire. Browse, search, paginate, and upload files from your disks, with single or multi-select, drag-to-reorder, collections, soft deletes, and trait helpers for quick model integration.
<livewire:media-selector wire:model="media" collection="gallery" />) plus a composer require. That is a scoping decision you can make in a sprint planning meeting rather than a roadmap quarter.collection="avatars" vs collection="gallery" is the package's primary organizing lever and it is a product-modeling decision, not a technical one. Choosing collections over per-feature tables or separate disks locks in how content editors think about assets — worth an explicit decision, since the package re-validates every selection against the active disk/collection/owner scope.canDelete, canSeeTrash, canRestoreTrash) rather than as custom code.:can-delete / :can-upload flags are meant to be fed from your own policies/gates. This forces the useful product conversation — "who is allowed to delete a client's hero image?" — early, instead of after an incident.Adopt when:
#[Locked]ed all permission and storage properties. Older lines (1.x) predate that work and are not an acceptable production target.Look elsewhere when:
1.x, which lacks the security hardening — treat this as a hard no, not a tradeoff.media table your system of record and you have complex ownership/multi-tenancy rules. The config exposes table and model so you can point at your own, but decide this before writing the migration — retrofitting a canonical media model after assets exist is the expensive version.For executives — the decision in one line: We can buy a working media picker for our admin in an afternoon instead of building one over the next sprint or two. It is MIT-licensed, it is a single component plus one database table, and if it disappoints us we remove it without a rewrite.
The business case:
composer require, one published migration, one Blade tag. A demoable picker in the same day.For engineering — the honest caveats to state up front:
1.x.What I need approved: adoption for the admin CMS forms specifically (not a general DAM mandate), a version pin with a changelog review at each upgrade, and a named engineer to own the published views and config as our fork-in-place surface.
What I am explicitly not asking for: committing to the roadmap items (folders, tags, cropping, chunked uploads). If those become requirements, that is a new build-vs-buy decision, not a promise this package has already made.
How can I help you explore Laravel packages today?