PHPackages                             maduser/argon-filesystem - 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. maduser/argon-filesystem

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

maduser/argon-filesystem
========================

Flysystem storage disk integration for the Argon runtime stack.

v1.0.0(2mo ago)00MITPHPPHP ^8.2CI passing

Since May 25Pushed 2mo agoCompare

[ Source](https://github.com/judus/argon-filesystem)[ Packagist](https://packagist.org/packages/maduser/argon-filesystem)[ RSS](/packages/maduser-argon-filesystem/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (1)Dependencies (8)Versions (2)Used By (0)

argon-filesystem
================

[](#argon-filesystem)

[![PHP](https://camo.githubusercontent.com/ce3e396e4f1bbbd326f628872a1414656d28065f2712cda0868d8eff07320aec/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d382e322b2d626c7565)](https://www.php.net/)[![Build](https://github.com/judus/argon-filesystem/actions/workflows/php.yml/badge.svg?branch=main)](https://github.com/judus/argon-filesystem/actions)[![codecov](https://camo.githubusercontent.com/d6ac45fe728ee4c9ab4645d3f69908426faf8141d14965a2a54eae473577fd4e/68747470733a2f2f636f6465636f762e696f2f67682f6a756475732f6172676f6e2d66696c6573797374656d2f6272616e63682f6d61696e2f67726170682f62616467652e737667)](https://codecov.io/gh/judus/argon-filesystem)[![Psalm Level](https://camo.githubusercontent.com/90553c9ebb8eed9b7a4b203f30f77cf9ee0a0b47fcb2b19e3fcfc457d7bd2a81/68747470733a2f2f73686570686572642e6465762f6769746875622f6a756475732f6172676f6e2d66696c6573797374656d2f636f7665726167652e737667)](https://shepherd.dev/github/judus/argon-filesystem)[![Latest Version](https://camo.githubusercontent.com/0967c8846aadcd5e74ad6316f7d932e276a69251cdadf9f2511e4161ba7e5591/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d6164757365722f6172676f6e2d66696c6573797374656d2e737667)](https://packagist.org/packages/maduser/argon-filesystem)[![Total Downloads](https://camo.githubusercontent.com/fe163d9ee5709c089fe1212b405ef92f7bc5b035012c1294788d56f721460461/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d6164757365722f6172676f6e2d66696c6573797374656d2e7376673f636f6c6f723d626c7565)](https://packagist.org/packages/maduser/argon-filesystem)[![License: MIT](https://camo.githubusercontent.com/fdf2982b9f5d7489dcf44570e714e3a15fce6253e0cc6b5aa61a075aac2ff71b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d79656c6c6f772e737667)](https://opensource.org/licenses/MIT)

Flysystem storage disk integration for the Argon runtime stack.

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

[](#installation)

```
composer require maduser/argon-filesystem
```

The local adapter is installed with this package. Other adapters remain application-owned:

```
composer require league/flysystem-aws-s3-v3
composer require league/flysystem-sftp-v3
composer require league/flysystem-ftp
```

Service Providers
-----------------

[](#service-providers)

Register `FilesystemServiceProvider`, then configure disks from an application service provider.

```
use League\Flysystem\Filesystem;
use League\Flysystem\Local\LocalFilesystemAdapter;
use Maduser\Argon\Container\AbstractServiceProvider;
use Maduser\Argon\Container\ArgonContainer;
use Maduser\Argon\Filesystem\FilesystemDiskRegistry;
use Maduser\Argon\Filesystem\Provider\FilesystemServiceProvider;

final class AppServiceProvider extends AbstractServiceProvider
{
    #[\Override]
    public function register(ArgonContainer $container): void
    {
        $container->register(FilesystemServiceProvider::class);
        $container->register(StorageServiceProvider::class);
    }
}

final class StorageServiceProvider extends AbstractServiceProvider
{
    #[\Override]
    public function register(ArgonContainer $container): void
    {
        $basePath = $container->getParameters()->get('basePath');
        assert(is_string($basePath));

        $container->get(FilesystemDiskRegistry::class)
            ->add('local', new Filesystem(new LocalFilesystemAdapter($basePath . '/storage/app')))
            ->setDefault('local');
    }
}
```

Usage
-----

[](#usage)

Resolve the manager for named disks:

```
use Maduser\Argon\Filesystem\FilesystemManager;

$storage = $container->get(FilesystemManager::class);

$storage->disk('local')->write('notes/hello.txt', 'Argon');
```

Resolve `League\Flysystem\FilesystemOperator` when a service only needs the default disk:

```
use League\Flysystem\FilesystemOperator;

$filesystem = $container->get(FilesystemOperator::class);

$contents = $filesystem->read('notes/hello.txt');
```

Boundaries
----------

[](#boundaries)

- This package wires Flysystem into Argon. It does not define a storage DSL.
- Applications own adapter packages, credentials, paths, buckets, and visibility rules.
- Configuration is explicit service-provider code, not automatic file discovery.
- `FilesystemOperator` resolves to the configured default disk. Use `FilesystemManager` for named disks.

Quality Gates
-------------

[](#quality-gates)

```
composer check
composer test:coverage
composer psalm
composer phpcs
```

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance88

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

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

60d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7fb9da5a15010d335622bf9f465a32ef79c8d1cffcd139c2a9114736b72e2c13?d=identicon)[jdu](/maintainers/jdu)

---

Top Contributors

[![judus](https://avatars.githubusercontent.com/u/1478654?v=4)](https://github.com/judus "judus (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/maduser-argon-filesystem/health.svg)

```
[![Health](https://phpackages.com/badges/maduser-argon-filesystem/health.svg)](https://phpackages.com/packages/maduser-argon-filesystem)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.8k543.8M20.5k](/packages/laravel-framework)[league/flysystem

File storage abstraction for PHP

13.6k679.9M2.6k](/packages/league-flysystem)[league/flysystem-aws-s3-v3

AWS S3 filesystem adapter for Flysystem.

1.7k285.7M1.1k](/packages/league-flysystem-aws-s3-v3)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[unisharp/laravel-filemanager

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

2.2k3.5M86](/packages/unisharp-laravel-filemanager)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M600](/packages/shopware-core)

PHPackages © 2026

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