Psalm plugins

These plugins allow Psalm to work great with popular packages like Laravel, PHPUnit, and Symfony.

Have a look at Psalm’s documentation to find out how to install and use them.

psalm/plugin-phpunit

255,422 47

Psalm plugin for PHPUnit

psalm/plugin-symfony

181,095 140

Psalm Plugin for Symfony

weirdan/doctrine-psalm-plugin

71,771 61

Stubs to let Psalm understand Doctrine better

psalm/plugin-laravel

66,815 189

A Laravel plugin for Psalm

psalm/plugin-mockery

22,775 3

Psalm plugin for Mockery

php-standard-library/psalm-plugin

15,168 4

Psalm plugin for the PHP Standard Library

hectorj/safe-php-psalm-plugin

5,662 3

vimeo/psalm plugin for thecodingmachine/safe

orklah/psalm-insane-comparison

4,768 20

Detects possible insane comparison ("string" == 0) to help migrate to PHP8

lctrs/psalm-psr-container-plugin

3,871 9

Let Psalm understand better psr11 containers

humanmade/psalm-plugin-wordpress

2,631 29

WordPress stubs and plugin for Psalm.

alexeyshockov/guzzle-psalm-plugin

2,421 1

Guzzle type information for Psalm

shoot/psalm-plugin

2,352 1

Provides static analysis for Shoot models and presenters

orklah/psalm-strict-types

1,479 11

Adds strict_types declaration when the file is provably safe

dq5studios/psalm-junit

1,425 3

Add junit report format to psalm

orklah/psalm-strict-visibility

1,324 5

A Psalm plugin to detect calling private or protected method via proxy

marartner/psalm-strict-equality

1,157 1

Psalm plugin to enforce strict equality

leighman/psalm-plugin-todo-by

820 0

Support @todo-by docblock annotations

marartner/psalm-no-empty

805 0

Do not allow usage of empty()

nederdirk/psalm-redis-stubs

605 0

Function signatures for the phpredis PECL package

orklah/psalm-strict-equality

482 3

Automatically change == into === when safe

practically/psalm-plugin-yii2

432 1

Psalm plugin for a better typed yii2 application

klimick/psalm-show-type

361 2

Analog for psalm-trace but with pretty print

orklah/psalm-strict-numeric-cast

346 4

Restrict the use of (int) and (float) to numeric-string only

kafkiansky/service-locator-interrupter

232 6

Psalm plugin for Laravel that interrupt service locator calls.

mortenson/psalm-plugin-drupal

144 27

Psalm support for Drupal security analysis.

runtothefather/doctrine-psalm-plugin

143 5

Repository resolver to show psalm how to resolve getRepository method

jmvdevelop/psalm-glob-stubs-plugin

132 1

Allow stubs with glob in your project

someniatko/iter-psalm-plugin

119 0

nikic/iter type information for Psalm

orklah/psalm-not-empty

71 16

Automatically change empty() into a more explicit expression

orklah/psalm-use-constants

71 3

Fix the code to use existing constants instead of literals when available

boesing/psalm-plugin-stringf

64 0

Psalm plugin to work with `sprintf`, `printf`, `sscanf` and `fscanf`.

bocmah/psalm-reactphp-promise-plugin

57 2

Psalm plugin for react/promise

matthewbdaly/psalm-plugin-zendframework1

35 1

Psalm plugin for Zend Framework 1

tdgroot/magento2-psalm

20 0

Psalm plugin for Magento 2

zerkms/symfony-psalm-plugin

19 2

Stubs for symfony interfaces

brokeyourbike/plugin-laravel

12 0

A Laravel 8 plugin for Psalm. PHP 8 only.

runtothefather/doctrine-mongodb-psalm-plugin

6 5

Stubs to let Psalm understand Doctrine MongoDb ODM better

weirdan/psalm-plugin-skeleton

5 7

Template to create psalm-plugin projects from

seferov/symfony-psalm-plugin

4 6

Psalm Plugin for Symfony

struggle-for-php/sfp-psalm-psr-log-plugin

4 0

Stubs to let Psalm understand psr/log (PSR-3) strictly

fkupper/psalm-laravel-collections

2 8

Stubs to let Psalm understand Laravel Collections better

zadorin/bitrix-psalm-plugin

1 1

Psalm plugin for Bitrix Framework

weirdan/psalm-doctrine-collections

1 50

Stubs to let Psalm understand Doctrine better

bocmah/psalm-reactphp-mysql-plugin

1 0

Psalm plugin for react/mysql

visma/magento2-psalm

1 3

Psalm plugin for Magento 2

el7cosmos/codeception-psalm-plugin

1 0

A Codeception plugin for psalm

dance-engineer/psalm-knapsack-collections

1 0

Stub to let Psalm understand Knapsack Collections better

loot/spinoza

0 0

Package can generate documentation for service

struggle-for-php/sfp-psalm-typed-local-variable-plugin

0 16

finding mismatch type assignment in function/method scope with psalm

patrickkusebauch/nette-psalm-plugin

0 1

Psalm plugin for Nette Framework

kafkiansky/reduce-arguments

0 0

Psalm plugin that makes sure that you don't use too many arguments in functions and methods.

alexeyshockov/iter-psalm-plugin

0 2

nikic/iter type information for Psalm

psalm/plugin-sabre-event

0 0

Psalm plugin for sabre/event

klebann/moodle-psalm-plugin

0 0

A Psalm plugin to detect unsafe usage of $DB methods with SQL

mopman/funserialize

0 1

Psalm plugin to add sinks for all file functions that accept streams.

samlitowitz/psalm-no-double-quoted-strings

0 1

Do not allow double-quoted strings

struggle-for-php/sfp-psalm-dont-operation-inside-constructor-plugin

0 0

Dont' operation inside constructor

futurerockstars/nette-psalm-plugin

0 1

Psalm plugin for Nette Framework

snowfall/phalcon-abstract-dispatcher

0 0

dispatcher with taint source for params

leightonthomas/validation-psalm-plugin

0 1

Psalm plugin for leightonthomas/validation.

sglitowitzsoci/soci-psalm-no-string-concatenation

0 0

SOCi Psalm Rule, no string concatenation

orklah/psalm-strict-types-empty-class

0 0

Add declaration of strict_types in empty class

samlitowitz/psalm-no-variables-in-strings

0 1

Do not allow variables in strings

orklah/psalm-type-setters-params

0 2

Use property type to fix param in the setter