blackcube/fileprovider

File provider with prefix routing and image processing

Maintainers

Package info

github.com/blackcubeio/fileprovider

pkg:composer/blackcube/fileprovider

Statistics

Installs: 15

Dependents: 0

Suggesters: 1

Stars: 0

Open Issues: 0

1.0.0 2026-03-21 17:47 UTC

This package is auto-updated.

Last update: 2026-03-21 17:48:24 UTC


README

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 Packagist Version Warning

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

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

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

# All tests
make test

Documentation

License

BSD-3-Clause. See LICENSE.md.

Author

Philippe Gaultier philippe@blackcube.io