laravel-shift/blueprint

Enhance Blueprint Stubs with PHPDoc to Eliminate PHPStan Warnings

Open

#738 opened on 2025年2月11日

GitHub で見る
 (1 comment) (0 reactions) (0 assignees)PHP (295 forks)user submission
communityenhancementgood first issue

Repository metrics

Stars
 (3,107 stars)
PR merge metrics
 (30d に merged PR はありません)

説明

Synopsis:

Blueprint generates stubs for models, controllers, and more, but without proper PHPDoc annotations, my IDE won’t stop nagging about missing or unclear types. Adding detailed annotations would improve type inference, reduce warnings, and make development smoother.

Proposed Syntax:

As an Example we can modify the stub: stubs/model.class.stub

<?php

namespace {{ namespace }};

{{ imports }}

class {{ class }} extends Model
{
    use HasFactory;
}

To:

<?php

namespace {{ namespace }};

{{ imports }}

class {{ class }} extends Model
{
    /** @use HasFactory<\Database\Factories\{{ class }}Factory> */
    use HasFactory;
}

Expected Behavior:

PHPStan would stop complaining about missing PHPDoc comments in generated files.
P.S. The above change did introduce another issue - SoftDeletes ended up in PHPDoc instead of being added as a trait.

コントリビューターガイド