PHPackages                             matthimatiker/marshaller - 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. matthimatiker/marshaller

ActiveComposer-installer[Utility &amp; Helpers](/categories/utility)

matthimatiker/marshaller
========================

Marshaller is a composer installer that copies packages to a configurable location.

0.1.2(13y ago)1627BSD-3-ClausePHP

Since Nov 19Pushed 13y ago1 watchersCompare

[ Source](https://github.com/Matthimatiker/Marshaller)[ Packagist](https://packagist.org/packages/matthimatiker/marshaller)[ RSS](/packages/matthimatiker-marshaller/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (4)Used By (0)

Marshaller
==========

[](#marshaller)

Master: [![Build Status](https://camo.githubusercontent.com/5864a3f3afdf5c52645957676abd8be56306c59ad9c6f12a339a14f773db5c23/68747470733a2f2f7365637572652e7472617669732d63692e6f72672f4d61747468696d6174696b65722f4d61727368616c6c65722e706e673f6272616e63683d6d6173746572)](http://travis-ci.org/Matthimatiker/Marshaller)

Marshaller is a composer installer that copies packages to a configurable location.

Activate the installer
----------------------

[](#activate-the-installer)

To activate the installer, a package must declare its type as *marshaller-asset*. Additionally, the installer package *matthimatiker/marshaller* must be required:

```
{
    "name": "my/package",
    "description": "Package that can be copied to a configured location.",
    "type": "marshaller-asset",
    "require": {
        "matthimatiker/marshaller": "*"
    }
}

```

Define default installation path
--------------------------------

[](#define-default-installation-path)

A package that uses the Marshaller installer may define its default installation path. The path is added to the *extra* configuration.

The following package uses *public/custom* as installation path:

```
{
    "name": "my/package",
    "description": "Package that will be copied to public/custom.",
    "type": "marshaller-asset",
    "require": {
        "matthimatiker/marshaller": "*"
    },
    "extra": {
        "installation-path": "public/custom"
    }
}

```

Overwrite installation path in root package
-------------------------------------------

[](#overwrite-installation-path-in-root-package)

The root package can overwrite the installation path of all dependencies that are installed via Marshaller.

To change the path, the new target is added to the *installation-paths* map, which resides in the *extra* configuration section:

```
{
    "name": "root/package",
    "description": "Root package that overwrites an installation path.",
    "type": "marshaller-asset",
    "require": {
        "matthimatiker/marshaller": "*"
    },
    "extra": {
        "installation-paths": {
            "my/package": "another/path"
        }
    }
}

```

The example above enforces the installation of the package *my/package* into the directory *another/path*.

If an required package as well as the root package define an installation path, then the configuration in the root package will be used.

Fallback behavior
-----------------

[](#fallback-behavior)

If a package uses the Marshaller installer, but neither itself nor the root package defines an installation path, then the default behavior of Composer will take place and the package will be copied to the *vendor*directory.

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity55

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

Every ~66 days

Total

3

Last Release

4786d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6355640b8a36b275627380128860f32f7eb196a5ca559b21ab473af98e7e99f6?d=identicon)[Matthimatiker](/maintainers/Matthimatiker)

---

Top Contributors

[![MatthiasMolitor](https://avatars.githubusercontent.com/u/1383323?v=4)](https://github.com/MatthiasMolitor "MatthiasMolitor (57 commits)")

---

Tags

composerinstallerconfigurable

### Embed Badge

![Health badge](/badges/matthimatiker-marshaller/health.svg)

```
[![Health](https://phpackages.com/badges/matthimatiker-marshaller/health.svg)](https://phpackages.com/packages/matthimatiker-marshaller)
```

###  Alternatives

[kenjis/codeigniter-composer-installer

Package to install CodeIgniter3 via Composer with secure folder structure.

37561.8k](/packages/kenjis-codeigniter-composer-installer)[craftcms/plugin-installer

Craft CMS Plugin Installer

283.3M4](/packages/craftcms-plugin-installer)[infinum/eightshift-libs

WordPress libs developed by Eightshift team to use in modern WordPress.

63118.9k3](/packages/infinum-eightshift-libs)[joomlatools/composer

A Composer plugin to install Joomla extensions into your installation.

5332.9k24](/packages/joomlatools-composer)[compwright/codeigniter-installers

Composer installers for CodeIgniter

2982.0k4](/packages/compwright-codeigniter-installers)

PHPackages © 2026

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