Laravel Packages

Static Analysis for Laravel Blade Templates

Published
Static Analysis for Laravel Blade Templates image

Have you ever released a Blade template to production that was accidentally missing a variable or a method that had a typo? Have you wanted to avoid finding templating bugs in production? Well, check out Bladestan, by the author of rector, which adds static analysis in PHPStan for Blade templates.

This package finds all view calls and looks if rendered variables have valid behavior in the provided template. For example, it will check the template file path and ensure it exists, inspect the variables, render the template, and review for any violation using your PHPStan setup.

Here's an example from the author's blog post Introducing Bladestan:

@foreach($posts as $post)
{{ $post->getContet() }}
@endforeach

In the above example, PHPStan would return the following report:

blog.blade.php:17
rendered in: app/Http/Controllers/BlogController.php:20
--------------------------------------------------------------
- '#Call to an undefined method App\\Entity\\Post\:\:getContet\(\)#'

Bladestan takes care of everything you need to check your blade templates statically and uses your existing PHPStan setup, including Larastan.

To start with Bladestan, you can get the installation and setup instructions from the GitHub repo.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article