The latest version of Psalm requires PHP >= 7.1 and Composer.
composer require --dev vimeo/psalm
Generate a config file:
Psalm will scan your project and figure out an appropriate error level for your codebase.
Then run Psalm:
Psalm will probably find a number of issues - find out how to deal with them in Dealing with code issues.
While Psalm can figure out the types used by various libraries based on the their source code and docblocks, it works even better with custom-tailored types provided by Psalm plugins.
Check out the list of existing plugins on Packagist: https://packagist.org/?type=psalm-plugin
Install them with
composer require --dev <plugin/package> && vendor/bin/psalm-plugin enable <plugin/package>
Read more about plugins in Using Plugins chapter.
Using the Phar
Sometimes your project can conflict with one or more of Psalm’s dependencies.
In that case you may find the Phar (a self-contained PHP executable) useful.
composer require --dev psalm/phar to install it.