hostnet/path-composer-plugin-lib
A small library for building Composer plugins around path-based package repositories, helping PHP projects resolve and install dependencies from local directories with less custom Composer integration code.
vendor-dir, monorepo layouts, shared dependency directories), this library replaces reimplementing Composer's internal path resolution and event wiring. That is a real engineering-hours trade, even if the package itself is tiny.vendor tree across services, can use a path-aware plugin to enforce a consistent install contract instead of ad-hoc composer.json overrides per project.vendor_dir / base_dir as constants. Downstream tooling (custom autoloaders, deployment scripts, container entrypoints, static analysis configs) can consume deterministic path constants rather than guessing at relative paths — useful for reproducible builds and CI.Adopt (or, more realistically, evaluate as a reference implementation) when all of the following hold:
PluginInterface, EventSubscriberInterface, and installer internals yourself.Look elsewhere — or simply copy the relevant helpers into your own codebase — when:
"vendor-dir" entry in composer.json). Config is cheaper than a dependency.For executives (30 seconds): This is a free, MIT-licensed micro-library that helps our platform engineers build Composer plugins — the tooling that controls where PHP dependencies get installed. It is not a customer-facing component and carries no licensing cost. Its strategic value is small but real: it saves engineering time on internal build tooling and standardizes how we lay out dependencies across repositories. The main risk is maturity — it is a one-maintainer project with essentially no adoption — so any use should be time-boxed, pinned, and trivially reversible by copying the code in-house.
For engineering leadership: Treat this as a build-vs-buy data point, not a platform commitment. If the DX team is writing more than one path-manipulating Composer plugin, this library removes duplicated knowledge of Composer internals and gives us vendor_dir/base_dir constants for deployment and autoload tooling. Because it is tiny, MIT, and unmaintained, the recommended posture is evaluate-and-vendor: read the source, pull the useful helpers into our own plugin scaffold, and keep the upstream dependency optional. We should not make it a load-bearing dependency in shipped customer code, and we should not spend roadmap capacity on it — it belongs in the platform/DX backlog as a low-effort, low-priority enablement item.
How can I help you explore Laravel packages today?