PHPackages                             flownative/resource-tools - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. flownative/resource-tools

ActiveNeos-package[Utility &amp; Helpers](/categories/utility)

flownative/resource-tools
=========================

Resource import and export and more tools for Flow

v2.2.0(1y ago)513.2k↓41.3%2[1 PRs](https://github.com/flownative/flow-resource-tools/pulls)MITPHP

Since Sep 29Pushed 1y ago2 watchersCompare

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

READMEChangelog (10)Dependencies (1)Versions (12)Used By (0)

[![MIT license](https://camo.githubusercontent.com/4661abfe916186acde514558e7f040833cb63ba7098401a51ce339cbb2b4cf9e/687474703a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e737667)](http://opensource.org/licenses/MIT)[![Packagist](https://camo.githubusercontent.com/46970466ab41aab6fa9f1763bee47904e5d4471c8ee3a156b5782cbc91e32ead/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f666c6f776e61746976652f7265736f757263652d746f6f6c732e737667)](https://packagist.org/packages/flownative/resource-tools)[![Maintenance level: Love](https://camo.githubusercontent.com/b24fe73a7439225808a806c9f1032014adf4933b5774648c0174cf0de1d56401/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6d61696e74656e616e63652d2545322539392541312545322539392541312545322539392541312d6666363962342e737667)](https://www.flownative.com/en/products/open-source.html)

Resource Import and Export for Flow Framework and Neos CMS
==========================================================

[](#resource-import-and-export-for-flow-framework-and-neos-cms)

Flownative Resource Tools is a package which provides

- a simple command line tool which allows for exporting and importing of Flow resources, independently from the resource storage being used
- multiple resource targets and storages for special purposes

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

[](#installation)

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

```
    $ composer require flownative/resource-tools
```

Usage
-----

[](#usage)

See `./flow help`

Resource Targets and Storages
=============================

[](#resource-targets-and-storages)

#### NonPublishingProxyStorage

[](#nonpublishingproxystorage)

A special wrapper for another storage that prevents automatic publishing of any resources imported to this storage. Note that you need to take care of publishing resources in your application, they will not be automatically published if you ask for the public URI. So never use this as default storage, for example for NeosCMS as it will not be able to work with unpublished resources. Note that running `./flow resource:publish` will publish resources added to a collection with this storage so you should avoid that.

Configuration options:

- `storageClass` - Sets the class name for the actual storage that will store resources.
- `storageOptions` - Configures the options for the storage class that actually stores resources.

Example configuration:

```
Neos:
  Flow:
    resource:
      storages:
        specialNonPublishedStorage:
          storage: 'Flownative\ResourceTools\ResourceManagement\NonPublishingProxyStorage'
          storageOptions:
            storageClass: 'Neos\Flow\ResourceManagement\Storage\WritableFileSystemStorage'
            storageOptions:
              path: '%FLOW_PATH_DATA%Persistent/Resources/'
```

#### SaltedFileSystemSymlinkTarget

[](#saltedfilesystemsymlinktarget)

This target works just like the Flow `\Neos\Flow\ResourceManagement\Target\FileSystemSymlinkTarget`but it generates a salted hash that cannot be guessed by knowing the file. This is useful if you let anonymous users upload resources to your system but don't want them to be able to guess the public URI for security reasons.

Configuration options:

All the options of the Flow FileSystemSymlinkTarget

- `salt` - optional (will fallback to Flow system encryption key) - the salt to hash URIs with. If you run multiple servers make sure to set this to the same string on every server instead of relying on the encryption key. Ideally set this to a long randomly generated string.

Example configuration:

```
Neos:
  Flow:
    resource:
      targets:
        localWebDirectoryPersistentResourcesTarget:
          target: 'Flownative\ResourceTools\ResourceManagement\SaltedFileSystemSymlinkTarget'
          targetOptions:
            subdivideHashPathSegment: true
            # Optional salt
            salt: 'foobar'
```

#### DummyTarget

[](#dummytarget)

This target prevents any publication by simply doing nothing. For all intends and purposes it looks to Flow like a regular target, but it will not actually make resources public and requesting a URI for one will always return an empty string. There are no configuration options:

Example configuration:

```
Neos:
  Flow:
    resource:
      targets:
        dummyTarget:
          target: '\Flownative\ResourceTools\ResourceManagement\DummyTarget'
          targetOptions: []
```

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance45

Moderate activity, may be stable

Popularity31

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor1

Top contributor holds 85.7% 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 ~301 days

Recently: every ~551 days

Total

10

Last Release

441d ago

Major Versions

1.2.2 → v2.0.02020-12-18

### Community

Maintainers

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

---

Top Contributors

[![robertlemke](https://avatars.githubusercontent.com/u/95582?v=4)](https://github.com/robertlemke "robertlemke (54 commits)")[![kdambekalns](https://avatars.githubusercontent.com/u/95873?v=4)](https://github.com/kdambekalns "kdambekalns (5 commits)")[![kitsunet](https://avatars.githubusercontent.com/u/324408?v=4)](https://github.com/kitsunet "kitsunet (3 commits)")[![dlubitz](https://avatars.githubusercontent.com/u/13046100?v=4)](https://github.com/dlubitz "dlubitz (1 commits)")

### Embed Badge

![Health badge](/badges/flownative-resource-tools/health.svg)

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

###  Alternatives

[neos/eel

The Embedded Expression Language (Eel) is a building block for creating Domain Specific Languages

122.0M27](/packages/neos-eel)[neos/form

Extensible and flexible API for building web forms

18853.0k40](/packages/neos-form)[neos/fusion-form

Fusion Form

19724.3k31](/packages/neos-fusion-form)[ttree/scheduler

Simple task scheduler for Neos Flow Framework

21108.8k1](/packages/ttree-scheduler)[avency/neos-vardump

Neos VarDump Package

147.1k](/packages/avency-neos-vardump)[flowpack/task

A Task scheduler for Neos Flow

1136.3k1](/packages/flowpack-task)

PHPackages © 2026

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