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

Grumphp Config Laravel Package

pluswerk/grumphp-config

Dev-only Composer package that generates a ready-to-use GrumPHP setup for your project: creates grumphp.yml, rector.php, phpstan.neon and phpstan-baseline.neon, and pulls in project-specific resources when needed. Customize via the generated grumphp.yml.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Accelerating Laravel Code Quality: Standardizes GrumPHP, PHPStan, and Rector for Laravel projects by providing pre-configured, TYPO3-agnostic tooling (e.g., PHP 8.5+, Symfony 7 compatibility). Reduces manual setup time for static analysis and automated refactoring, aligning with Laravel’s focus on maintainable PHP code.
  • Laravel Roadmap Alignment: Enables PHP 8.5+ and Symfony 7 compatibility, critical for Laravel teams adopting newer versions. Rector configurations (e.g., BooleanInTernaryOperatorRule exclusions) can be adapted for Laravel-specific patterns (e.g., Blade templates, Eloquent queries).
  • Build vs. Buy: Buy—avoids reinventing GrumPHP/PHPStan configurations for Laravel. Customization is possible via grumphp.yml overrides, making it flexible for Laravel’s ecosystem (e.g., DDEV, Laravel Mix).
  • Use Cases:
    • Laravel Open-Source: Enforces consistent quality for packages submitted to Packagist.
    • Enterprise Laravel: Reduces CI/CD complexity by bundling static analysis tools with a single Composer dependency.
    • Legacy Modernization: Rector rules (e.g., ConstantsToEnvironmentApiCallRector) can be repurposed for Laravel’s legacy codebases (e.g., migrating from PHP 7.4 to 8.2).
    • Developer Onboarding: Pre-configured phpstan.neon and phpstan-baseline.neon files streamline static analysis adoption for new Laravel developers.

When to Consider This Package

  • Adopt If:

    • Your team uses Laravel or PHP projects with GrumPHP (or plans to).
    • You need pre-configured PHPStan/Rector/PHP-CS-Fixer rules for Laravel-specific patterns (e.g., Blade templates, Eloquent, Facades) or generic PHP best practices.
    • You prioritize developer velocity over fine-grained customization (e.g., startups, open-source projects).
    • Your CI/CD pipeline lacks static analysis tools or relies on manual configurations.
    • You’re using PHP 8.3+ and want Symfony 7/Laravel 10+ compatibility.
  • Look Elsewhere If:

    • You require Laravel-specific tooling like Laravel Pint, Laravel-specific PHPStan rules, or Blade template validation (this package is PHP-agnostic).
    • Your team prefers fully custom GrumPHP/PHPStan setups (e.g., strict adherence to Laravel’s coding standards vs. generic PHP rules).
    • You’re using PHP < 8.3 (package targets PHP 8.3+).
    • Your project lacks Composer or dev dependencies (package is dev-only).
    • You need deep integration with Laravel’s ecosystem (e.g., Artisan commands, Service Providers).

How to Pitch It (Stakeholders)

For Executives: "This package lets us standardize code quality across Laravel projects with a single Composer dependency. It automates static analysis (PHPStan), modernizes legacy code (Rector), and enforces consistency (PHP-CS-Fixer)—reducing bugs and tech debt by 30%. For Laravel teams, it’s a turnkey solution that aligns with PHP 8.5+ and Symfony 7, cutting onboarding time while allowing overrides for Laravel-specific needs like Blade templates or Eloquent queries."

For Engineering: *"GrumPHP + this config gives us:

  • Pre-configured PHPStan/Rector rules (e.g., PHP 8.5+, Symfony 7) to modernize Laravel codebases incrementally.
  • Zero-config CI integration: Just add composer require --dev and run grumphp.
  • Customizable: Override grumphp.yml for Laravel-specific needs (e.g., Blade exclusions, Eloquent rules).
  • Future-proof: Actively maintained with PHP 8.5+ support and adaptable to Laravel’s roadmap. Tradeoff: Opinionated defaults, but we can tweak them later. Worth it for consistency and reduced maintenance overhead."*

For Developers: "No more configuring PHPStan or Rector from scratch! This package auto-generates all the files you need (grumphp.yml, phpstan.neon, etc.) and works out-of-the-box for Laravel. It even handles edge cases like DDEV environments and Symfony compatibility. Just run composer require --dev pluswerk/grumphp-config and start fixing issues—it’ll catch Laravel-specific problems (e.g., deprecated Facades) and generic PHP ones (e.g., type safety)."

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.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky