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

Phpstan Laravel Package

contributte/phpstan

Contributte PHPStan integration for Nette projects. Install via Composer and get a ready-to-use PHPStan setup tailored for Nette 3.3+ on PHP 8.2+, with docs and ongoing maintenance by the Contributte team.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Code Quality as a Competitive Advantage: Position the product as technically rigorous by adopting strict static analysis, reducing runtime bugs and improving developer productivity. Aligns with messaging around "enterprise-grade reliability" or "developer-first" tooling.
  • Developer Experience (DX) Investment: Reduce cognitive load for engineers by automating quality checks, freeing them to focus on feature development. Justify as a productivity multiplier in sprint planning.
  • Risk Mitigation for Scalability: As the Laravel codebase grows, proactively catch architectural debt (e.g., tight coupling, type inconsistencies) before they become blockers. Critical for monolithic-to-microservices migrations or high-traffic applications.
  • Build vs. Buy for Static Analysis:
    • Buy: If the team lacks PHPStan expertise or time to curate rules.
    • Build: If the product has unique Laravel patterns (e.g., custom Eloquent behaviors) not covered by Contributte, invest in extending this package or building a custom extension.
  • Security and Compliance: Use PHPStan’s input validation rules to preemptively address OWASP Top 10 risks (e.g., injection flaws) in Laravel APIs. Tie to SOC 2/GDPR compliance efforts.
  • Roadmap for "Laravel Pro" Features:
    • Offer static analysis as a premium feature (e.g., "Laravel Enterprise" tier).
    • Bundle with automated refactoring tools (e.g., "Fix violations with one click").
  • Open-Source Contribution Strategy: If the product is open-source, contribute Laravel-specific rules back to Contributte to improve the package’s relevance and build community goodwill.

When to Consider This Package

Adopt If:

  • Your Laravel application is mission-critical (e.g., SaaS, fintech, e-commerce) where code quality directly impacts revenue (e.g., uptime, security).
  • You’re migrating legacy code or refactoring a large codebase (50K+ LoC) and need to surface hidden dependencies before major changes.
  • Your CI/CD pipeline already uses PHPStan and you want to leverage opinionated, Laravel-aware rules without maintaining custom configurations.
  • You prioritize developer velocity over short-term setup costs—static analysis reduces debugging time by catching issues early.
  • Your team is comfortable with static analysis (or willing to adopt it) and has budget for a 2-week pilot.
  • You need rules for Laravel-specific patterns (e.g., Eloquent relationships, Blade templates, service container bindings) that generic PHPStan lacks.

Look Elsewhere If:

  • Your project is small or experimental (e.g., prototypes, MVPs) where speed > perfection. Use basic PHPStan or Psalm instead.
  • You lack PHPStan expertise—start with vanilla PHPStan or a managed service (e.g., Scrutinizer CI).
  • Your stack is not Laravel-centric (e.g., Symfony, WordPress, or custom PHP). Use framework-agnostic tools like Psalm or InstaPHPC.
  • You need enterprise support (e.g., SLAs, dedicated engineers). This package is community-driven; consider paid alternatives like:
  • Your CI/CD pipeline cannot tolerate additional runtime (e.g., <5-minute builds). Benchmark first—Contributte’s rules may add 1–3 minutes to analysis.
  • You require highly custom rules (e.g., business-logic-specific validations). This package is opinionated; fork or build custom extensions instead.

How to Pitch It (Stakeholders)

For Executives (CTO, VP Engineering)

Elevator Pitch: *"We’re missing a critical layer of quality assurance in our Laravel stack—static analysis—that could cut debugging time by 20% and reduce production incidents by surfacing bugs before they ship. This package, Contributte/PHPStan, gives us Laravel-specific static analysis out of the box: it catches type errors, security flaws, and inefficiencies in our code before they reach users.

Why now?

  • Cost-effective: Free, open-source, and integrates in under a day.
  • Proven: Used by teams at [example company] to reduce technical debt.
  • Scalable: As we grow, this will future-proof our codebase for refactoring and security audits.

Ask: Let’s approve a 2-week pilot to integrate this into our CI pipeline and measure the impact on defect rates. If it saves us even 10 hours/week in debugging, it pays for itself in months."*

Metrics to Track:

  • Reduction in runtime errors (e.g., PHP notices, crashes).
  • Decrease in debugging time (time spent fixing issues post-deploy).
  • Number of critical bugs caught pre-merge.

For Engineering Leaders (Tech Leads, DevOps)

Technical Pitch: *"Contributte/PHPStan lets us enforce Laravel-specific static analysis without reinventing the wheel. Here’s how it fits into our stack:

What It Solves:

  • Type Safety: Catches inconsistencies in Eloquent models, service containers, and Blade templates that PHPStan alone misses.
  • Security: Flags potential injection risks (e.g., unsafe query building) early.
  • Maintainability: Surfaces hidden dependencies and deprecated APIs before they become tech debt.

Why This Over Alternatives:

Tool Laravel-Specific? Maintenance Cost
Vanilla PHPStan ❌ No High Free
Psalm ❌ No Medium Free
Contributte ✅ Yes Low Free
Scrutinizer CI ❌ No Managed Paid

Implementation Plan:

  1. Week 1: Install and configure in CI (composer require --dev contributte/phpstan).
  2. Week 2: Run in non-blocking mode (log issues) and triage false positives.
  3. Ongoing: Gradually enable stricter rules and fail builds on violations.

Risks & Mitigations:

  • False Positives: Document exclusions in phpstan.neon and train the team.
  • CI Slowdown: Benchmark—if >2 minutes, optimize with parallel analysis.
  • Rule Gaps: Extend the package or fork for custom Laravel patterns.

Ask: Can we reserve 1 dev day to integrate this and monitor impact for 3 months? If it reduces our defect escape rate, we’ll make it permanent."*

Key Selling Points:

  • "No custom rule development"—Laravel-specific rules are pre-built.
  • "CI-ready"—just add to composer.json and configure.
  • "Future-proof"—aligns with PHPStan’s roadmap and Laravel’s type safety trends.

For Developers

Collaboration Pitch: *"Hey team! Let’s supercharge our code quality with Contributte/PHPStan—it’s like a spellcheck for Laravel, catching bugs before they hit production.

What You’ll Gain: ✅ Fewer "Why is this breaking in staging?!" moments (static analysis catches type errors early). ✅ Cleaner PRs (rules enforce consistency, reducing review time). ✅ Confidence in refactoring (know exactly what dependencies you’re changing).

How It Works:

  1. We add it to composer.json (1 line).
  2. It runs in CI and flags issues (but won’t block merges at first).
  3. We fix the easy ones, then ramp up strictness over time.

What to Expect:

  • Some false positives (e.g., Laravel’s dynamic methods). We’ll document these.
  • A learning curve (PHPStan’s output can be verbose). I’ll share a cheat sheet.
  • Long-term wins: Less debugging, more time for features.

Let’s try it for 2 weeks—if it saves us even 1 hour/week, it’s worth it. Who’s in?"*

Developer-Friendly Notes:

  • "Opt-in severity": Start with warnings, then enable errors.
  • "Ignore annotations": Use @phpstan-ignore for edge cases.
  • "Pair with IDE": PHPStorm/VSCode will highlight issues as you code.
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.
babenkoivan/elastic-client
innmind/static-analysis
innmind/coding-standard
datacore/hub-sdk
alengo/sulu-http-cache-bundle
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi
splash/scopes
splash/toolkit
testo/output-teamcity