kinetis/storage

File storage for Kinetis, built on League\Flysystem — local storage via a genuinely non-blocking Amp\File-backed adapter; remote backends (S3, etc.) live in kinetis/storage-s3.

Maintainers

Package info

github.com/kinetis-dev/storage

pkg:composer/kinetis/storage

Transparency log

Statistics

Installs: 4

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.3 2026-08-16 08:57 UTC

This package is auto-updated.

Last update: 2026-08-16 08:57:29 UTC


README

Kinetis

kinetis/storage
File storage for Kinetis, built on League\Flysystem

Packagist Version Packagist Downloads PHP Version License CI

Read, write, delete, and list files against League\Flysystem's FilesystemOperator interface — swappable to a different backend with no application-code changes. Local storage is Kinetis's own backend, Amp\File-backed rather than Flysystem's own local adapter, so every operation genuinely suspends the calling Fiber instead of blocking the whole worker process. Remote backends (S3, etc.) live in the separate kinetis/storage-s3.

use Kinetis\Storage\FilesystemFactory;

$storage = FilesystemFactory::fromConfig($config);

$storage->write('avatars/user-42.png', $imageContents);
$contents = $storage->read('avatars/user-42.png');
$storage->delete('avatars/user-42.png');

Configuration

Read from the environment (or .env) via Kinetis\Config. Every key is scoped.

Key Default Purpose
FILESYSTEM_DRIVER local local, or s3 (needs kinetis/storage-s3).
FILESYSTEM_ROOT (required for local) Local disk root path.

Scoped keys follow the named-connection convention — the connection name inserts after the first segment: FILESYSTEM_ROOT + uploadsFILESYSTEM_UPLOADS_ROOT. Full reference across every package: docs.kinetis.dev/config.html.

Installation

composer require kinetis/storage

Requires PHP 8.4+ and kinetis/framework. Full documentation: docs.kinetis.dev/storage.html.

License

MIT — see LICENSE.