Weave Code
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

Extension Installer Laravel Package

phpstan/extension-installer

Composer plugin that automatically discovers and installs PHPStan extensions, eliminating manual includes in phpstan.neon. Add it as a dev dependency, allow the plugin in Composer, and extensions can declare includes via extra.phpstan for auto-setup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs Buy: Definitely buy. Building this functionality would require significant effort to handle Composer plugin lifecycle, extension discovery, and configuration generation – all already solved by this well-maintained package.
  • Feature Enablement: Enables seamless adoption of multiple PHPStan extensions (e.g., doctrine, nette, phpunit) without manual includes management in phpstan.neon. Eliminates configuration drift and human error when adding/removing extensions.
  • Roadmap Acceleration: Supports faster onboarding of static analysis rules by reducing setup friction. Critical for teams scaling PHPStan usage across projects or introducing new analysis layers (e.g., security, performance).
  • Technical Debt Reduction: Prevents "configuration sprawl" where teams manually maintain dozens of includes entries. The plugin dynamically handles extension dependencies, ensuring correct order and avoiding conflicts.

When to Consider This Package

  • Adopt when:
    • Using ≥2 PHPStan extensions (e.g., phpstan/phpstan-doctrine + phpstan/phpstan-phpunit).
    • Projects use Composer for dependency management (standard for PHP applications).
    • Teams prioritize consistency in static analysis setup across multiple repositories.
    • Working with modern PHP versions (≥7.4) and Composer ≥2.2.
  • Look elsewhere when:
    • Not using PHPStan at all (this package has zero value without it).
    • Using a single extension where manual includes is trivial (though still recommended for future-proofing).
    • Legacy environments with Composer <2.2 (though v1.0+ supports Composer 1.x).
    • Projects with custom extension loading requirements outside PHPStan's standard pattern (e.g., dynamic neon generation).

How to Pitch It (Stakeholders)

Executives: "This tiny, open-source plugin automates our static code analysis setup, saving developers 10+ hours per quarter in configuration maintenance. It ensures consistent, error-free rule integration across all projects – directly reducing production bugs and accelerating feature delivery. With zero runtime overhead and MIT licensing, it’s a risk-free investment in engineering efficiency."

Engineering: "It eliminates manual includes management in phpstan.neon by auto-discovering extensions via Composer metadata. Developers simply composer require the extension – the plugin injects its config automatically. Zero maintenance, zero runtime cost, and handles edge cases like ignoring specific extensions. Used by PHPStan core maintainers and adopted by 497+ projects. This is the standard pattern for PHP static analysis tooling."

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.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4