PHPackages                             takeshiyu/composer-linker - 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. takeshiyu/composer-linker

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

takeshiyu/composer-linker
=========================

A Composer plugin for linking local packages during development, similar to `npm link`.

0.1.0(1y ago)7155MITPHPCI passing

Since Mar 21Pushed 1y ago1 watchersCompare

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

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

Composer Linker
===============

[](#composer-linker)

 [![Build Status](https://github.com/takeshiyu/composer-linker/actions/workflows/php.yml/badge.svg)](https://github.com/takeshiyu/composer-linker/actions/workflows/php.yml)

A Composer plugin for linking local packages during development, similar to `npm link`.

Key Features
------------

[](#key-features)

- **No project files** - All link information is stored in the global Composer directory
- **Simple workflow** - Register once, link anywhere
- **Clean development** - No modifications to your composer.json
- **Automatic backups** - Original packages are preserved and can be restored

Requirements
------------

[](#requirements)

- Composer 2.0+
- PHP 8.2+
- Filesystem that supports symbolic links

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

[](#installation)

```
composer global require takeshiyu/composer-linker
```

Usage
-----

[](#usage)

### Register a local package

[](#register-a-local-package)

First, register your local package globally:

```
# In your package directory
composer link

# Or specify a path
composer link /path/to/your/package
```

This makes the package available for linking in any project.

### Link a package to your project

[](#link-a-package-to-your-project)

In your project directory, link to a registered package:

```
composer link vendor/package
```

This creates a symbolic link in your vendor directory pointing to the local package source.

### List linked packages

[](#list-linked-packages)

Show all packages linked in your current project:

```
composer linked
```

Show all globally registered packages:

```
composer linked --global
```

Show all projects and their linked packages:

```
composer linked --all
```

### Unlink a package

[](#unlink-a-package)

Restore a package to the installed version:

```
composer unlink vendor/package
```

How it works
------------

[](#how-it-works)

This plugin:

1. Stores all link information in a central links.json file in ~/.composer/links/
2. Uses symbolic links to connect your project to local packages
3. Preserves your composer.json file (no modifications needed)
4. Works at the filesystem level, similar to npm link
5. Never creates any files in your project directory

Benefits
--------

[](#benefits)

- No files in your project directory that could be committed to version control
- Consistent workflow across projects
- Easy to switch between development and production versions
- Works with Composer's autoloading system

License
-------

[](#license)

`Composer Linker` package is open-sourced software licensed under the [MIT license](LICENSE)

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance46

Moderate activity, may be stable

Popularity17

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity27

Early-stage or recently created project

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

417d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3075c9103f3dddee28d255b45df7bfc4c58459e182f8c600a07930856e97dc39?d=identicon)[TakeshiYu](/maintainers/TakeshiYu)

---

Tags

composercomposr-plugindevelopment-toolslocal-developmentnpm-linkpackage-developmentphpsymlinkworkflow

###  Code Quality

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/takeshiyu-composer-linker/health.svg)

```
[![Health](https://phpackages.com/badges/takeshiyu-composer-linker/health.svg)](https://phpackages.com/packages/takeshiyu-composer-linker)
```

###  Alternatives

[vaimo/composer-patches

Applies a patch from a local or remote file to any package that is part of a given composer project. Patches can be defined both on project and on package level. Optional support for patch versioning, sequencing, custom patch applier configuration and patch command for testing/troubleshooting added patches.

2994.3M16](/packages/vaimo-composer-patches)[mglaman/composer-drupal-lenient

1317.4M15](/packages/mglaman-composer-drupal-lenient)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5341.9M446](/packages/drupal-core-composer-scaffold)[drupal/core-project-message

Adds a message after Composer installation.

2122.6M172](/packages/drupal-core-project-message)[olvlvl/composer-attribute-collector

A convenient and near zero-cost way to retrieve targets of PHP 8 attributes

184108.8k8](/packages/olvlvl-composer-attribute-collector)[lullabot/drainpipe

An automated build tool to allow projects to have a set standardized operations scripts.

41716.4k2](/packages/lullabot-drainpipe)

PHPackages © 2026

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