PHPackages                             blackcube/fileprovider - 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. blackcube/fileprovider

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

blackcube/fileprovider
======================

File provider with prefix routing and image processing

1.0.0(1mo ago)022↑33.3%2BSD-3-ClausePHPPHP ^8.1

Since Apr 4Pushed 1mo agoCompare

[ Source](https://github.com/blackcubeio/fileprovider)[ Packagist](https://packagist.org/packages/blackcube/fileprovider)[ Docs](https://github.com/blackcubeio/fileprovider)[ RSS](/packages/blackcube-fileprovider/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (20)Versions (3)Used By (2)

Blackcube FileProvider
======================

[](#blackcube-fileprovider)

Multi-filesystem file provider with prefix routing, image processing, cached file helpers, and Resumable.js upload.

You write `@blfs/image.jpg`, FileProvider routes to S3. You chain `->cover(300, 200)->read()`, it processes on the fly. You never touch Flysystem directly.

[![License](https://camo.githubusercontent.com/6cb285b57819f8de0acfb34923298f4f569f962544e8fe35331da2d163f4e485/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4253442d2d332d2d436c617573652d626c75652e737667)](LICENSE.md)[![Packagist Version](https://camo.githubusercontent.com/edc1e99f7c3c649f813a1670fdcd40c719fe02b1177ded7df306849ea262a759/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f626c61636b637562652f66696c6570726f76696465722e737667)](https://packagist.org/packages/blackcube/fileprovider)[![Warning](https://camo.githubusercontent.com/f6bc4777f4b5c33df3e4f07b00623d3231016d0291e5ce1bf40b0dc084c71145/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f426c61636b637562652d5761726e696e672d6f72616e6765)](BLACKCUBE_WARNING.md)

Quickstart
----------

[](#quickstart)

```
composer require blackcube/fileprovider
```

```
use Blackcube\FileProvider\FileProvider;
use Blackcube\FileProvider\Flysystem\FlysystemLocal;
use Yiisoft\Aliases\Aliases;

$provider = new FileProvider(new Aliases());
$provider->addFilesystem('@bltmp', new FlysystemLocal('/tmp/uploads'));
$provider->addFilesystem('@blfs', new FlysystemLocal('/var/www/storage'));

// Write, move, read
$provider->write('@bltmp/upload.jpg', $content);
$provider->move('@bltmp/upload.jpg', '@blfs/images/photo.jpg');
$content = $provider->read('@blfs/images/photo.jpg');

// Image processing (requires intervention/image)
$thumbnail = $provider->cover(200, 200)->read('@blfs/images/photo.jpg');
```

Tests
-----

[](#tests)

```
# Unit tests (Provider, Integration, Local suites)
make test-unit

# Functional tests (starts HTTP server)
make test-functional

# All tests
make test
```

Documentation
-------------

[](#documentation)

- [Overview &amp; prerequisites](docs/index.md)
- [Installation (standalone)](docs/installation-standalone.md)
- [Installation (Yii)](docs/installation-yii.md)
- [API — FileProvider](docs/api-fileprovider.md)
- [API — CacheFile](docs/api-cachefile.md)
- [API — Resumable](docs/api-resumable.md)

License
-------

[](#license)

BSD-3-Clause. See [LICENSE.md](LICENSE.md).

Author
------

[](#author)

Philippe Gaultier

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance91

Actively maintained with recent releases

Popularity9

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

44d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/545714?v=4)[pgaultier](/maintainers/pgaultier)[@pgaultier](https://github.com/pgaultier)

---

Top Contributors

[![pgaultier](https://avatars.githubusercontent.com/u/545714?v=4)](https://github.com/pgaultier "pgaultier (2 commits)")

---

Tags

ftpfilesystemFlysystems3sftpimage processingstorageuploadminiofile managementfileprovider

###  Code Quality

TestsCodeception

### Embed Badge

![Health badge](/badges/blackcube-fileprovider/health.svg)

```
[![Health](https://phpackages.com/badges/blackcube-fileprovider/health.svg)](https://phpackages.com/packages/blackcube-fileprovider)
```

###  Alternatives

[league/flysystem

File storage abstraction for PHP

13.6k639.1M2.2k](/packages/league-flysystem)[league/flysystem-aws-s3-v3

AWS S3 filesystem adapter for Flysystem.

1.6k263.6M790](/packages/league-flysystem-aws-s3-v3)[creocoder/yii2-flysystem

The flysystem extension for the Yii framework

2931.7M62](/packages/creocoder-yii2-flysystem)[league/flysystem-async-aws-s3

AsyncAws S3 filesystem adapter for Flysystem.

2610.5M31](/packages/league-flysystem-async-aws-s3)[innoge/laravel-rclone

A sleek PHP wrapper around rclone with Laravel-style fluent API syntax

174.1k](/packages/innoge-laravel-rclone)

PHPackages © 2026

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