Laravel Medialibrary
Laravel Medialibrary stats
- Downloads
- 15.4M
- Stars
- 5,428
- Open Issues
- 12
- Forks
- 1,025
Associate files with Eloquent models
Laravel Media Library Package Summary
The Spatie Laravel Media Library package provides a robust way to associate files with Eloquent models in Laravel applications. It simplifies the management of media files by offering a fluent, intuitive API to handle file uploads, storage, and manipulation seamlessly.
Key Features
- Easy File Association: Quickly associate files with Eloquent models using simple API methods.
- Flexible File Handling: Directly handle file uploads from user inputs.
- Multiple Storage Options: Supports different storage systems per collection, allowing you to store files locally or on external services like Amazon S3.
- Image Manipulations: Automatic image and PDF manipulation when files are added to the media library, leveraging Laravel's Filesystem features.
- Extensive Documentation: Detailed user guides and examples are available, making it easy to integrate and use the package in your projects.
Installation
Installation can be done via Composer:
composer require spatie/laravel-medialibrary
Refer to the official documentation for detailed installation and setup instructions.
Usage Examples
Associate a file with a model:
$newsItem = News::find(1);$newsItem->addMedia($pathToFile)->toMediaCollection('images');
Handle file uploads directly from a request:
$newsItem->addMedia($request->file('image'))->toMediaCollection('images');
Store large files in different storage systems:
$newsItem->addMedia($bigFile)->toMediaCollection('downloads', 's3');
Additional Resources
- Testing: Information on running tests using Pest and Github Actions is provided.
- Contributing: Guidelines for contributing to the package are available.
- Security: Instructions for reporting security vulnerabilities.
Support and Community
Spatie, the creator of this package, welcomes support via sponsorships and appreciates feedback and contributions to their open source work. Users are encouraged to send postcards as a unique way of saying thanks!
Conclusion
The Laravel Media Library package by Spatie is an essential tool for developers looking to efficiently manage media files in their Laravel applications. With its comprehensive features and supportive documentation, it ensures a smoother development experience and enhances the capabilities of Laravel projects.
For more details and to explore the full capabilities of the package, visit the official documentation.