Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Psalm Shepherd server

Psalm coverage

Tracking type coverage in public projects

Many public GitHub projects (Psalm included) display a small badge showing how much of the project’s code is covered by PHPUnit tests, because test coverage is a useful metric when trying to get an idea of a project’s code quality.

Hopefully, if you’ve got this far, you think type coverage is also important. To that end, I’ve created a service that allows you to display your project’s type coverage anywhere you want.

Psalm, PHPUnit and many other projects now display a type coverage badge in their READMEs.

You can generate your own by adding --shepherd to your CI Psalm command. Your badge will then be available at{username}/{repo}/coverage.svg This service is the beginning of an ongoing effort for Psalm to support open-source PHP projects hosted on GitHub.