amjadiqbal/laralink
Laralink is a Laravel package for creating and managing links inside your application. It offers a simple API for generating short or internal URLs, storing link records, and handling redirects, making link management easy to integrate into existing Laravel projects.
composer.json edits, and bespoke scripts.../*, ../*/*, ~/projects) and need quick switching between local source and remote releases.--backup, rollback on Composer failure, guarded deletes, constraint restoration, and .laralink.json state tracking reduce the risk of broken composer.json, lost work, or accidental deletion during local development.laralink:list --json and --filter=local|remote enable scripts and dashboards for detecting linked packages, stale local copies, constraint drift, and remote-vs-local state.Consider adoption when:
composer.json path repositories, create symlinks manually, or run fragile shell scripts to test local package changes.--json, --filter) or want to surface linked-package state in internal tooling.https://, git@host:, ssh://, file://) with branch/tag selection during development.Look elsewhere or delay when:
--symlink flag or old command behavior; migration planning is required, especially since 1.x was never on Packagist and its documented options did not match actual behavior.To executives: This package reduces friction and risk in how our teams develop and test internal Laravel packages. It replaces manual Composer edits and fragile symlink scripts with a supported workflow that can back up work, roll back failed dependency changes, and report local-vs-remote package state. Adopting it can shorten iteration cycles for package maintainers and lower the chance of broken local environments. The trade-off is a platform baseline: PHP 8.3+ and Laravel 12/13, so it fits best alongside an upgrade or for teams already on those versions.
To engineering: v2.0.0 is the first credible release: it adds real --source, --branch, --copy, --force, JSON listing, filtering, backups, compatibility checks, and .laralink.json state memory. It also fixes serious reliability issues: failed Composer runs now roll back composer.json, deletes on symlinks do not touch source folders, and forced re-links update vendor/. Be aware of breaking changes: PHP 8.3+ and Laravel 12/13 are required, --symlink is removed, the path repository is placed first in composer.json, and the hard-coded version/minimum-stability settings are gone. Plan a short migration and validation pass rather than assuming 1.x behavior.
To the delivery team: Use this where local package iteration is a recurring workflow, not as a production dependency. Start with one internal package and one host app, validate laralink:dev, laralink:list --json, and laralink:publish --backup in a non-critical branch, then standardize the workflow if it reduces setup time and Composer-state incidents.
How can I help you explore Laravel packages today?