Go to file
2020-05-10 10:35:15 -07:00
.github chore: add issue templates 2020-05-10 10:35:15 -07:00
assets chore: include screenshot 2020-05-03 21:27:08 -07:00
src fix: get the actual class of the app depending on if its lumen vs. laravel 2020-05-08 18:40:39 -07:00
tests fix: get the actual class of the app depending on if its lumen vs. laravel 2020-05-08 18:40:39 -07:00
.gitignore change file extension of ide helper files so phpstorm doesnt analyze them 2020-04-18 13:16:19 -07:00
codeception.yml introduce testing 2020-04-08 00:47:02 -07:00
composer.json fix: keep psalm exception handler 2020-05-08 16:48:01 -07:00
LICENSE Add license 2020-02-03 16:57:15 -05:00
phpcs.xml chore: introduce phpcs 2020-04-12 11:55:32 -07:00
psalm-baseline.xml refactor: simplify logic for booting the app by stubbing the lumen application file 2020-04-13 21:16:12 -07:00
psalm.xml chore: dont analyze cached files from third party 2020-04-13 22:52:44 -07:00
README.md chore: include screenshot 2020-05-03 21:27:08 -07:00

Psalm plugin for Laravel

Packagist Packagist Type coverage dev-master Tests

Overview

This package brings static analysis and type support to projects using Laravel. Our goal is to find as many type-related bugs as possible, therefore increasing developer productivity and application health. Find bugs without the overhead of writing tests!

Screenshot

Quickstart

Please refer to the full Psalm documentation for a more detailed guide on introducing Psalm into your project.

First, start by installing Psalm if you have not done so already:

composer require --dev vimeo/psalm
./vendor/bin/psalm --init

Next, install this package and enable the plugin

composer require --dev psalm/plugin-laravel
./vendor/bin/psalm-plugin enable psalm/plugin-laravel

Finally, run Psalm to analyze your codebase

./vendor/bin/psalm

How it works

Under the hood it just runs https://github.com/barryvdh/laravel-ide-helper and feeds the resultant stubs into Psalm, which can read PHPStorm meta stubs.

It also parses any database migrations it can find to try to understand property types in your database models.