vimex/storage-utils
vimex/storage-utils is a lightweight Laravel/PHP utility package for common storage tasks, offering reusable helpers to simplify file and path operations and streamline everyday storage workflows in your applications.
Storage contract plus key generators, file fetchers, and a storage registry that let application code write files without knowing whether they land on local disk, S3, or GCS. The decision it informs is whether to put a seam between our domain code and our blob store now, or accept a migration project later.Consider it when:
Look elsewhere when:
Storage facade plus league/flysystem directly — first-party, maintained, PHP 8 and Flysystem v3 support, huge community. This package adds nothing Laravel's filesystem layer doesn't already do.Recommendation: do not adopt as a dependency. Borrow the interface design.
For executives: This is a 2018 snapshot of Akeneo's file-storage abstraction with no maintainer, no users, and no releases in seven years. Taking it as a dependency is an unhedged maintenance bet on software nobody is watching — the failure mode is a security patch we have to write ourselves, on someone else's code, under time pressure. The good news is the cost of the alternative is small: the abstraction we actually need is a thin layer over Flysystem, measured in days, and it keeps us on a maintained upgrade path. The strategic value here is the pattern (a clean seam between our application and our blob storage), not the package.
For engineering: The worthwhile idea is the split between the storage contract, key generation, and file fetching — that's what makes backend swaps non-events. We should replicate that shape on top of league/flysystem and laravel/framework's filesystem layer rather than pull in a dead 2018 library. If Akeneo compatibility ever becomes a hard requirement, we vendor the source under our own namespace, pin it, and budget an exit — but we don't put it on the critical path today.
How can I help you explore Laravel packages today?