Psalm is a type-checking static analysis tool for PHP that finds bugs humans can miss, and improves code quality. Try it at psalm.dev

Joined December 2018
20 Photos and videos
11 May 2025
Announcing a new series of blogposts about Psalm v6's innovative performance improvements! Starting with Psalm 6.1 Deep Dive: Copy-on-Write dynamic task dispatching: blog.daniil.it/2025/05/11/ps…
2
6
444
30 Nov 2022
Psalm 5 is out! To symbolise this tremendous group effort we've translated the announcement into all the languages of Psalm's maintainers: psalm.dev/articles/psalm-5
2
22
46
Psalm retweeted
15 Nov 2022
Running @psalmphp on my tests code has been a good decision so far. Makes it far easier to keep tests updated. Automation for the win!
1
1
4
19 Oct 2022
If people want PHP generics then someone should create an RFC for erased-at-runtime generics. Erased-at-runtime types in PHP would be an insurmountable language shift for some voters, but maybe there’s enough support to carry it through.
1
5
40
19 Oct 2022
All the major static analysis tools would quickly adapt, and there’s precedent in Python, which added support for type-erased generics (without a bundled typechecker to accompany that change).
2
1
6
19 Oct 2022
It’s very unlikely that generics would be The Thing That Finally Makes Doubters Take PHP Seriously. But support for generics in PHP syntax (vs docblocks) would make a lot of code a little more beautiful than it is today.
1
2
16
Psalm retweeted
Wrote a @psalmphp plugin to ensure I'm marking classes as final properly. If a concrete class does need to be inherited you can mark it with an Attribute to suppress the error. #php github.com/cspray/phinal
2
6
12
14 May 2022
The literal-string type continues to do good work! It's now also supported in @phpstan (thx to @craigfrancis), which caught a SQL injection bug here: forum.nette.org/cs/35223-php…
21 Jun 2021
New type just dropped: Psalm 4.8 supports a new literal-string type which you can use to prevent SQL-injection attacks: psalm.dev/r/55dec032b9 Find out more here: github.com/vimeo/psalm/relea…
1
4
10
Psalm retweeted
Me: 'Going from @psalmphp level 2 to level 1, how bad can it be?' Psalm: 533 errors found
4
2
22
Psalm retweeted
24 Feb 2022
As JetBrains we condemn the attacks taking place. Our hearts are with the Ukrainian people, including our own colleagues and their families.
198
2,328
15,400
Psalm retweeted
Done and done. phpcs applies my coding standard consistently and psalm statically analyzes codebase to make sure all types are correct. 99.5035% type safe according to psalm.
Replying to @jwage
80% is excellent IMO. Now just add some linting and code quality rules and you are winning at life ;)
1
10
Psalm retweeted
26 Jan 2022
👋 We're hiring a Senior Software Engineer in Berlin or remote! 💻 Build high-quality supply chain tools for thousands of devs in the PHP ecosystem 🐘 with the makers of #composerphp #php #phpc
11
95
218
Psalm retweeted
28 Nov 2021
While most of the work on Psalm is about getting it understand your code right, there's a place for UI improvements as well. There are several that are either already shipped or coming soon: 1. Psalm now linkifies files in supporting terminals (thanks to @gregorharlan)
3
6
34
28 Nov 2021
While most of the work on Psalm is about getting it understand your code right, there's a place for UI improvements as well. There are several that are either already shipped or coming soon: 1. Psalm now linkifies files in supporting terminals (thanks to @gregorharlan)
3
6
34
28 Nov 2021
2. Psalm now highlights file names to provide visual anchors
2
6
28 Nov 2021
And 3. Psalm now outputs PHP version it uses for code analysis (and explains why it uses it)
6
28 Nov 2021
Replying to @gregorharlan
This was contributed by @Rarst
5