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)7168MITPHPCI 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 today

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 35% of packages

Maintenance42

Moderate activity, may be stable

Popularity18

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity28

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

471d 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

[symfony/runtime

Enables decoupling PHP applications from global state

74798.8M1.0k](/packages/symfony-runtime)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5445.2M565](/packages/drupal-core-composer-scaffold)[drupal/core-project-message

Adds a message after Composer installation.

2124.7M203](/packages/drupal-core-project-message)[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.

3014.6M26](/packages/vaimo-composer-patches)[sandersander/composer-link

Adds ability to link local packages for development with composer

98457.9k](/packages/sandersander-composer-link)[phpro/grumphp-shim

GrumPHP Phar distribution

294.7M340](/packages/phpro-grumphp-shim)

PHPackages © 2026

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