Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Ide Link Bundle Laravel Package

vincecore/ide-link-bundle

PHP package that adds IDE deep links to error pages, logs, and stack traces, so you can jump from the browser or terminal straight to the exact file and line in PhpStorm, VS Code, or another editor. Configurable URL schemes and simple setup make debugging faster.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit — low as code, moderate as pattern. Despite being listed in a Laravel/PHP context, this is a Symfony bundle (IdeLinkBundle), not a Laravel package. Laravel has no bundle/DI-compiler-pass model, so the artifact itself will not install or boot in a Laravel application. What is transferable is the problem it solves: when PHP runs inside a VM/Vagrant/Docker container, stack traces and profiler output emit container-absolute paths (/var/www/app/...), so clicking a file link in the browser or terminal opens the wrong path — or nothing — in the host IDE. That problem is real and recurring in Laravel dev environments, which makes the package relevant as a reference design (a small path-rewriting layer) rather than as a dependency.

Integration feasibility. Direct adoption: not feasible for Laravel. The bundle targets the Symfony 2/3 kernel and its service container; wiring it into Laravel would require a compatibility shim larger than the feature itself. Reimplementation: trivial — the core behavior is a string/path map applied to file paths before they are rendered into links, plus a configuration surface for remote → local prefixes. A TPM should budget this as a half-day spike plus a one-day implementation, not a procurement decision.

Technical risk.

  • Abandonment: last release 2016-08-03, roughly a decade stale. No security posture, no CVE response, no PHP 8 compatibility work.
  • Zero dependents / 2 stars: no evidence of production battle-testing. Any behavior you rely on is unverified by third parties.
  • Runtime risk is genuinely low because the tool is development-only — it never sits on a request path in production. The risk is maintenance and correctness, not availability or data exposure.
  • Silent failure mode by design: path-rewriting tools fail by producing a link that opens the wrong file rather than by throwing. That is a poor failure signature for something developers are expected to trust.
  • Scope ambiguity: unclear from metadata alone whether it patches Symfony's exception renderer, the profiler, Monolog, or all three — which determines how much of the pattern is worth copying.

Key questions for the maintainer/repo.

  1. Which Symfony versions and PHP versions are actually supported, and does the bundle boot at all on a modern PHP (8.1+)?
  2. Where does it hook — exception handler, profiler, log formatter, or the IDE link format directly?
  3. How is the path map configured (container parameters, YAML, env), and does it support multiple mounts / prefix-length disambiguation?
  4. Does it handle multiple editors and URI schemes (phpstorm://, vscode://, file://), and Windows host paths?
  5. Is the license permissive enough for a fork, and is the author receptive to patches or explicitly archiving the project?
  6. Is there any test suite at all, or is behavior entirely undocumented?

Recommendation: do not add as a dependency. Treat it as a 2016-era reference implementation of a still-valid idea, and satisfy the underlying need with configuration that already exists in the modern stack.

Integration Approach

Stack fit. In a Laravel codebase the equivalent capability is already present in three places and should be preferred over any third-party bundle:

  • Ignition (bundled with Laravel) exposes an editor setting and supports remote/local path mapping in config/ignition.php — this is the direct Laravel-native answer to the same problem.
  • Xdebug xdebug.file_link_format rewrites file links at the source for CLI and HTML output.
  • IDE-side path mappings (PhpStorm deployment mappings, VS Code Remote/Dev Containers) solve it without touching application code at all.

Sequencing matters: exhaust the IDE-side and Xdebug options first, because they require no application dependency and survive framework upgrades.

Migration path (if already on Symfony, or forking the idea).

  • Do not attempt to install the bundle into Laravel — there is no migration path, only a reimplementation.
  • If the team is on Symfony and wants the bundle: pin the version, vendor the fork into src/ or a private package, and confirm PHP/Symfony constraints before committing. Budget for owning it permanently.
  • If the team is on Laravel: implement a small dev-only helper that maps container prefixes to host prefixes and feeds Ignition's editor config; keep it under ~100 lines and behind APP_ENV=local.

Compatibility.

  • PHP: 2016 vintage implies PHP 5.6–7.x. Expect deprecation notices and possibly fatal errors on PHP 8.x (typed properties, Serializable, dynamic properties).
  • Framework: Symfony 2/3 kernel and DI semantics; incompatible with Laravel's service provider model and with Symfony 5+ autowiring conventions.
  • Environment: the entire value proposition is environment-specific. Any solution must be revalidated whenever the container image, volume mount layout, or developer OS changes.

Sequencing (recommended).

  1. Week 1 — verify the problem. Confirm broken links reproduce for the team and identify which surface is affected (Ignition page, logs, terminal). Often only one of the three is actually broken.
  2. Week 1 — try native config first. Ignition editor + path map, then Xdebug file_link_format, then IDE mappings. Most teams stop here.
  3. Week 2 — build only if needed. A dev-only path-rewrite helper, documented in the onboarding guide alongside the Docker/VM setup.
  4. Ongoing — no upgrade obligation, because nothing was adopted.

Operational Impact

Maintenance. Effectively zero upstream maintenance — the project has had no release since August 2016 and no dependent ecosystem to surface breakage. Any adopted copy becomes internal code with no upstream to rebase against. If you fork it, you own PHP-version bumps, Symfony/Laravel drift, and editor-scheme changes forever.

Support. Community support is negligible (2 stars, 0 dependents). There is no realistic path to an upstream fix, and issue response should be assumed absent. Internal documentation is the only support mechanism, which argues strongly for a solution small enough that any engineer can read it end-to-end.

Scaling. Non-issue as a runtime concern — this is per-developer tooling, not a shared service. Scaling cost is organizational: each new developer, each new container image, and each new host OS is an opportunity for the path map to be wrong. The cost scales linearly with team size and environment churn, and it accrues silently (broken links are tolerated, not reported).

Failure modes.

  • Silent no-op: the rewrite doesn't match, links resolve to container paths, IDE opens nothing. Degrades gracefully but invisibly.
  • Wrong-file opens: longest-prefix ambiguity when multiple mounts overlap (e.g., /var/www and /var/www/app) — arguably worse than no-op, since it wastes debugging time on the wrong file.
  • Environment drift: a Docker volume or Vagrant synced-folder change invalidates the map with no error.
  • Version-drift fatal: PHP 8 incompatibility in a boot-time service registration can break the entire dev environment, not just the feature — the primary reason not to install it.
  • Editor/scheme mismatch: phpstorm:// vs vscode:// vs Windows drive-letter paths; mixed-OS teams will hit this.
  • Boundary leak: if wired as a normal package rather than require-dev, it ships to production. Low exploitability (no data path), but it adds an unmaintained dependency to the production SBOM — an avoidable audit finding.

Ramp-up. For developers consuming a working solution: minutes, entirely invisible when correct. For the engineer owning it: 2–4 hours to understand the pattern and configure it, 1–2 days if building the Laravel-native replacement including documentation and a test. The onboarding documentation matters more than the code — the next person to touch the container config must know the path map exists.

Bottom line for the TPM: the package scores 0.01 for good reason. It targets a framework you are not using, has been unreleased for roughly a decade, and has no adoption signal. Fund a short spike to confirm the broken-link problem is real and scoped, resolve it with Ignition/Xdebug/IDE configuration, and keep this repository as a design reference only. Do not add it to the dependency tree.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings