tomasvotruba/bladestan
Bladestan adds static analysis for Laravel Blade templates to PHPStan, catching errors like undefined methods in your views. Includes a custom error formatter with clickable links to the exact template line.
[@bladestan-signature](https://github.com/bladestan-signature) docblocks instead of failing on them, so a template can be
annotated ahead of the template-centric 0.12 release while still analysing cleanly on 0.11.The final 0.11.x release before the template-centric rewrite, focused on keeping projects that are not ready to upgrade stable.
[@include](https://github.com/include) where arrays or values from arrays are used (#158, @calebdw)->with*() on all view methodsFacades\Response::view()BladeCompiler (@aoi, @AJenbo)->with*() affecting more than the view instance it was called on$errors, [@once](https://github.com/once), [@each](https://github.com/each), [@includeWhen](https://github.com/includeWhen), and [@includeUnless](https://github.com/includeUnless)renderEach() and first() on View\Factoryuse statements in partials[@extends](https://github.com/extends) and other indirect statements\Illuminate\Support\Facades\View::make (#115, @williamdes)content() (#114, @williamdes)Arrayable::toArray() as data (#116, @AJenbo)MailMessage::view() (#78, @AJenbo)view() with a single argument (#80, @spawnia)Htmlable objects (#91, @AJenbo)BladeToPHPCompiler (#76, @AJenbo)compact() (#47, @AJenbo)$loop in nested [@foreach](https://github.com/foreach) (#53, @AJenbo)$loop rather than replacing it with a docblock (#50, @AJenbo)[@include](https://github.com/include) with data given in a variable (#46, @AJenbo)e() output (#16)Initial release. Bladestan compiles each Blade template to PHP, runs PHPStan over the result, and maps the errors back to the original template. Based on earlier work by Can Vural (see Credits in the README).
How can I help you explore Laravel packages today?