pharaonic / laravel-uploader
Upload files to any Laravel disk with hashed names, image thumbnails, visibility control and secure URLs.
13.1.0
2026-11-06 10:43 UTC
Requires
- php: >=8.3 <8.6
- illuminate/contracts: ^13.0
- illuminate/database: ^13.0
- illuminate/filesystem: ^13.0
- illuminate/http: ^13.0
- illuminate/routing: ^13.0
- illuminate/support: ^13.0
- intervention/image: ^4.0
- pharaonic/laravel-readable: ^13.0
Requires (Dev)
- laravel/pint: ^1.20
- orchestra/testbench: ^11.0
- pestphp/pest: ^4.0
- phpstan/phpstan: ^2.1.33
- phpunit/phpunit: ^12.5.8
Suggests
- ext-gd: Required to generate thumbnails, unless images.default is set to imagick.
- ext-imagick: Required to generate thumbnails when images.default is set to imagick.
- league/flysystem-aws-s3-v3: Required to store uploads on S3 with visibility and temporary URLs.
Provides
None
Conflicts
None
Replaces
None
- dev-develop
- 13.x-dev
- 13.1.0
- 13.0.0
- 12.x-dev
- 12.0.0
- 11.x-dev
- 11.0.0
- 10.x-dev
- 10.0.0
- 9.x-dev
- 9.0.0
- 8.x-dev
- 8.0.0
- 7.x-dev
- 7.0.0
- 6.x-dev
- 6.1.0
- 6.0.0
- 4.0.6
- 4.0.5
- 4.0.4
- 4.0.3
- 4.0.2
- 4.0.1
- 4.0.0
- 3.0.1
- 3.0.0
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2.1
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.0
- 1.0.2
- 1.0.1
- 1.0.0
- dev-feat/intervention-image-4-develop
- dev-feat/intervention-image-4-13.x
- dev-fix/image-manager-11.x
- dev-fix/image-manager-12.x
- dev-fix/image-manager-10.x
- dev-fix/image-manager-6.x
- dev-fix/image-manager-7.x
- dev-fix/image-manager-8.x
- dev-fix/image-manager-9.x
- dev-fix/gd-skip-9.x
- dev-fix/gd-skip-8.x
- dev-fix/gd-skip-6.x
- dev-fix/gd-skip-7.x
- dev-fix/thumbnail-name-7.x
- dev-fix/thumbnail-name-8.x
- dev-fix/thumbnail-name-6.x
- dev-main
This package is auto-updated.
Last update: 2026-11-06 10:50:09 UTC
README
Upload files to any Laravel disk with hashed names, image thumbnails, visibility control and secure URLs.
Installation
composer require pharaonic/laravel-uploader php artisan migrate
The service provider is registered automatically. Publish the configuration when you need to change it:
php artisan vendor:publish --tag=uploader-config
Usage
$upload = upload($request->file('avatar'), [ 'path' => 'avatars', 'thumbnail' => ['width' => 200, 'ratio' => true], ]); $upload->url; // file URL, or a temporary URL for private S3 files $upload->thumbnail->url; // thumbnail URL uploaded($upload->hash); // find it again by hash
Documentation
Full documentation: Laravel Uploader Documentation.
Support & Security
See SUPPORT.md and SECURITY.md. Contributions are welcome; see CONTRIBUTING.md.
License
MIT. See LICENSE.
