PHPackages                             fynduck/files-upload - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. fynduck/files-upload

ActiveLibrary[File &amp; Storage](/categories/file-storage)

fynduck/files-upload
====================

Save &amp; resize &amp; crop images

4.1.0(3mo ago)18791MITPHPPHP &gt;=8.1CI failing

Since Sep 24Pushed 3mo ago2 watchersCompare

[ Source](https://github.com/fynduck/files-upload)[ Packagist](https://packagist.org/packages/fynduck/files-upload)[ Docs](https://github.com/fynduck/files-upload)[ RSS](/packages/fynduck-files-upload/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (10)Dependencies (6)Versions (69)Used By (0)

FilesUpload
===========

[](#filesupload)

[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)[![Latest Version on Packagist](https://camo.githubusercontent.com/8cdc5a162f7c5366c9e080eb4d6654e3eda4c59ff53bdaa43c2735b59a8d865c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f66796e6475636b2f66696c65732d75706c6f61642e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/fynduck/files-upload)[![Tests](https://github.com/fynduck/files-upload/actions/workflows/FileUpload.yml/badge.svg)](https://github.com/fynduck/files-upload/actions/workflows/FileUpload.yml/badge.svg)[![Total Downloads](https://camo.githubusercontent.com/020d943d8eeddb562b84b827afc38a348e6d35441b2046d72d1039b9c6f0ef63/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f66796e6475636b2f66696c65732d75706c6f61642e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/fynduck/files-upload)

**Laravel****files-upload****Php version**`=`5.6`>=` 5.7`^`2.1`>=`5.65.7 - 11.0`^`3.1`>=`7.1`>=` 9.0`^`4.0`>=`8.1Usage
-----

[](#usage)

**Upload file or image**

```
use Fynduck\FilesUpload\UploadFile;

UploadFile::file($request->file('file')) //or $request->get('base64'), required
    ->setDisk('storage') //default is public
    ->setFolder('Post') //optional
    ->setName('image_name') //optional, default use file name or random in case base64
    ->setOverwrite('old_name.jpg') //optional, remove file with old name
    ->setSizes(['xs' => ['width' => 100, 'height' => 100]]) //(optional) if need other sizes
    ->setBackground('#000000') //optional
    ->setBlur(0) //optional, use values between 0 and 100
    ->setBrightness(0) //optional, use values between -100 and +100. brightness 0 for no change
    ->setGreyscale(true) //optional true or false default is false
    ->setOptimize(true) //optional
    ->setEncodeFormat() //optional, ['jpeg', 'jpg', 'png', 'gif', 'webp', 'avif']
    ->setEncodeQuality() //optional, use values between 0 and 100
    ->save('resize'); //save option resize, crop default is resize
```

**Make new sizes from image**

```
use Fynduck\FilesUpload\ManipulationImage;

ManipulationImage::load($pathImage)
            ->setDisk('storage') //default is public
            ->setFolder('Post')
            ->setSizes(['xs' => ['width' => 100, 'height' => 100]])
            ->setName('image_name.jpg') //name with extension
            ->setOverwrite('old_name.jpg') //optional, remove file with old name
            ->setBackground('#000000') //optional
            ->setBlur(0) //optional, use values between 0 and 100
            ->setBrightness(0) //optional, use values between -100 and +100. brightness 0 for no change
            ->setGreyscale(true) //optional true or false default is true
            ->setOptimize(true) //optional
            ->setEncodeFormat() //optional, ['jpeg', 'jpg', 'png', 'gif', 'webp', 'avif']
            ->setEncodeQuality() //optional, use values between 0 and 100
            ->save('resize'); //save option resize, resize-crop, crop default is resize
```

**Optimize exist image**

```
use Fynduck\FilesUpload\ManipulationImage;

ManipulationImage::load('image_name.jpg')
            ->setOptimize(true)
            ->optimize('path_to_image');
```

> **resize**: Resize the image by the maximum width or height
>
> **crop**: Cut out by size part of the current image with given width and height

For laravel &lt; 5.7 use version 1.8
------------------------------------

[](#for-laravel--57-use-version-18)

Previous stable versions
------------------------

[](#previous-stable-versions)

- [Version ^3.1](https://github.com/fynduck/files-upload/tree/3.1.7)
- [Version ^2.1](https://github.com/fynduck/files-upload/tree/2.1.3)
- [Version ^1.8](https://github.com/fynduck/files-upload/tree/1.8.6.2)

Installation
------------

[](#installation)

You can install the package via composer:

```
composer require fynduck/files-upload
```

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

[![JetBrains](/phpstorm.png)](https://www.jetbrains.com/?from=files-upload)License
-------

[](#license)

The MIT License (MIT). Please see [License File](/LICENSE.md) for more information.

###  Health Score

52

—

FairBetter than 96% of packages

Maintenance82

Actively maintained with recent releases

Popularity16

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity85

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~42 days

Recently: every ~92 days

Total

66

Last Release

96d ago

Major Versions

1.8.6 → 2.0.72020-11-13

1.8.6.1 → 2.12020-12-04

1.8.6.2 → 2.1.12020-12-08

2.1.3 → 3.02020-12-14

3.1.7 → 4.0.02025-03-16

PHP version history (5 changes)1.1.1PHP ^7.0

1.5PHP ^5.6

1.6PHP &gt;=5.6

3.1.6PHP &gt;=7.0

4.0.0PHP &gt;=8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/c1e2c914b6acaa6610e8b07da82484a27c57e7787a15c978104a05bc295f33a7?d=identicon)[fynduck](/maintainers/fynduck)

---

Top Contributors

[![fynduck](https://avatars.githubusercontent.com/u/12099534?v=4)](https://github.com/fynduck "fynduck (112 commits)")

---

Tags

cropfilefilesystemimageslaravelpackagephpresizeresize-imagesupload-imagesuploadslaravelFiles Uploadfynduck

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/fynduck-files-upload/health.svg)

```
[![Health](https://phpackages.com/badges/fynduck-files-upload/health.svg)](https://phpackages.com/packages/fynduck-files-upload)
```

###  Alternatives

[unisharp/laravel-filemanager

A file upload/editor intended for use with Laravel 5 to 10 and CKEditor / TinyMCE

2.1k3.4M81](/packages/unisharp-laravel-filemanager)[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[sebastienheyd/boilerplate

Laravel Boilerplate based on AdminLTE 3 with blade components, user management, roles, permissions, logs viewer, ...

29419.5k3](/packages/sebastienheyd-boilerplate)[outerweb/image-library

Store and link files to your models

1113.8k3](/packages/outerweb-image-library)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
