PHPackages                             flownative/flow-resourceproxy - 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. flownative/flow-resourceproxy

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

flownative/flow-resourceproxy
=============================

A Flow package that transparently imports missing resources from a remote source

v0.0.6(10mo ago)18.7k—6.3%4MITPHPPHP ^7.4 || ^8.0 || ^8.1

Since Dec 9Pushed 10mo ago2 watchersCompare

[ Source](https://github.com/flownative/flow-resourceproxy)[ Packagist](https://packagist.org/packages/flownative/flow-resourceproxy)[ RSS](/packages/flownative-flow-resourceproxy/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (1)Versions (7)Used By (0)

[![MIT license](https://camo.githubusercontent.com/4661abfe916186acde514558e7f040833cb63ba7098401a51ce339cbb2b4cf9e/687474703a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e737667)](http://opensource.org/licenses/MIT)[![Packagist](https://camo.githubusercontent.com/31a77b1abf409b7c607be8590725f20f8018e43159f7b1962dbc1de11841bfda/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f666c6f776e61746976652f666c6f772d7265736f7572636570726f78792e737667)](https://packagist.org/packages/flownative/flow-resourceproxy)[![Packagist](https://camo.githubusercontent.com/fc034913985eceae80d784fc2aca3d109825280c6acc6a9452140d3feaac7a14/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646d2f666c6f776e61746976652f666c6f772d7265736f7572636570726f7879)](https://packagist.org/packages/flownative/flow-resourceproxy)[![Maintenance level: Love](https://camo.githubusercontent.com/1e42f66452ae2f07329d87d031d01ae1825930fcd952c6a0f052ccfeaeaf0292/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6d61696e74656e616e63652d2545322539392541312545322539392541312d6666363962342e737667)](https://www.flownative.com/en/products/open-source.html)

Flownative.Flow.ResourceProxy
=============================

[](#flownativeflowresourceproxy)

Description
-----------

[](#description)

This [Flow](https://flow.neos.io) package allows to transparently import resource data from other systems into Flow. It does this by providing an implementation that tries to fetch missing resources from a remote source. When a resource can be fetched, it is "imported" and available as usual, otherwise the system behaves as usual when a resource is missing.

Because [Neos CMS](https://www.neos.io) is using Flow's resource management under the hood, this also works nicely for assets in Neos.

This is mostly useful for local development, as it removes the need to copy all resources to the lcoal machine along with a database dump.

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

[](#installation)

The Flownative Resource Proxy is installed as a regular Flow package via Composer. For your existing project, simply include `flownative/flow-resourceproxy` into the dependencies of your Flow or Neos distribution:

```
composer require flownative/flow-resourceproxy

```

Configuration
-------------

[](#configuration)

To import, the package needs to know the base URI of the remote source and whether or not it uses subdivided hash path segments.

```
Flownative:
  Flow:
    ResourceProxy:
      storages:
        # the default storage for a Flow setup
        'defaultPersistentResourcesStorage':
          # the remote base URI to the published resources
          remoteSourceBaseUri: 'https://www.acme.com/_Resources/Persistent'
          # whether or not the remote source uses the target setting of the same name
          subdivideHashPathSegment: true
```

After setting up the configuration, clear the Fusion cache to make sure the URIs will be fetched again and can be checked for needing an import. Similarly, clearing the existing thumbnails will force the system to re-generate them.

Troubleshooting
---------------

[](#troubleshooting)

If things don't work as expected, check the system log, the package is pretty talkative in the debug log level.

Implementation
--------------

[](#implementation)

In Flow, resource access is handled through the resource management API. These mehods would need to check for a missing resource and try to fetch it if not available locally:

- `StorageInterface.getStreamByResource`
- `StorageInterface.getStreamByResourcePath` (unused in a plain Neos setup)
- `TargetInterface.getPublicPersistentResourceUri`

The following are covered by the above methods:

- `Collection.getStreamByResource` via `StorageInterface.getStreamByResource`
- `ResourceManager.getStreamByResource` via `Collection.getStreamByResource`
- `ResourceManager.getPublicPersistentResourceUri` via `TargetInterface.getPublicPersistentResourceUri`
- `ResourceManager.getPublicPersistentResourceUriByHash` via `TargetInterface.getPublicPersistentResourceUri`

On top of that the system uses image variants and thumbnails, assuming those exist if their metadata can be found in the database. Still, the URI for those is fetched using the `TargetInterface.getPublicPersistentResourceUri` method.

This package thus advises the `StorageInterface` and `TargetInterface` to check for missing resources and tries to "import" them as needed.

Note: So far this only works for the `WritableFileSystemStorage`.

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance54

Moderate activity, may be stable

Popularity28

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 50% 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 ~261 days

Recently: every ~327 days

Total

6

Last Release

314d ago

PHP version history (3 changes)v0.0.1PHP ^7.4

v0.0.3PHP ^7.4 || ^8.0

v0.0.4PHP ^7.4 || ^8.0 || ^8.1

### Community

Maintainers

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

---

Top Contributors

[![kdambekalns](https://avatars.githubusercontent.com/u/95873?v=4)](https://github.com/kdambekalns "kdambekalns (8 commits)")[![paavo](https://avatars.githubusercontent.com/u/1118783?v=4)](https://github.com/paavo "paavo (3 commits)")[![gradinarufelix](https://avatars.githubusercontent.com/u/4405087?v=4)](https://github.com/gradinarufelix "gradinarufelix (2 commits)")[![kitsunet](https://avatars.githubusercontent.com/u/324408?v=4)](https://github.com/kitsunet "kitsunet (2 commits)")[![adrian-cerdeira](https://avatars.githubusercontent.com/u/43271236?v=4)](https://github.com/adrian-cerdeira "adrian-cerdeira (1 commits)")

### Embed Badge

![Health badge](/badges/flownative-flow-resourceproxy/health.svg)

```
[![Health](https://phpackages.com/badges/flownative-flow-resourceproxy/health.svg)](https://phpackages.com/packages/flownative-flow-resourceproxy)
```

###  Alternatives

[knplabs/gaufrette

PHP library that provides a filesystem abstraction layer

2.5k39.8M123](/packages/knplabs-gaufrette)[superbalist/flysystem-google-storage

Flysystem adapter for Google Cloud Storage

26320.6M30](/packages/superbalist-flysystem-google-storage)[illuminate/filesystem

The Illuminate Filesystem package.

15161.6M2.6k](/packages/illuminate-filesystem)[creocoder/yii2-flysystem

The flysystem extension for the Yii framework

2931.7M62](/packages/creocoder-yii2-flysystem)[flowjs/flow-php-server

PHP library for handling chunk uploads. Works with flow.js html5 file uploads.

2451.6M15](/packages/flowjs-flow-php-server)[phpdocumentor/flyfinder

Flysystem plugin to add file finding capabilities to the Filesystem entity

30585.0k5](/packages/phpdocumentor-flyfinder)

PHPackages © 2026

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