# Prettier vs Psalm

**Leader by vioscaleAI score:** Prettier

| Attribute | Prettier | Psalm |
|---|---|---|
| **vioscaleAI score** | 80.2 (78% (high)) | 63.7 (42% (low)) |
| activity.commits_last_30d | 100 | 100 |
| adoption.dependent_repos | 1,703,312 | 15,920 |
| adoption.github_stars | 52,446 | 5,896 |
| adoption.package_downloads_weekly | 139,976,809 | - |
| content.faq | `[{"answer":"Prettier is a code formatting tool that parses source code and reprints it with its own consistent style rules. It integrates with editors and CI systems to format code automatically on save or in version control workflows, reducing style-related code review discussions. It is indexed under Code Quality Tools.","source":"https://prettier.io","question":"What is Prettier?","confidence":0.6},{"answer":"Prettier is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://prettier.io","question":"Is Prettier free to use?","confidence":0.6},{"answer":"Prettier supports the web and a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://prettier.io","question":"What platforms does Prettier support?","confidence":0.6},{"answer":"Yes. Prettier can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://prettier.io","question":"Can Prettier be self-hosted?","confidence":0.6},{"answer":"We have confirmed 7 integrations for Prettier, including VS Code, WebStorm, Vim, Sublime Text, Emacs, Visual Studio and Nova. This is what we could verify from public sources, so the vendor may support others we have not indexed.","source":"https://prettier.io","question":"What does Prettier integrate with?","confidence":0.6},{"answer":"Yes. Prettier is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/prettier/prettier","question":"Is Prettier open source?","confidence":0.99}]` | `[{"answer":"Psalm is a free, open-source static analyzer for PHP that identifies type-related errors and bugs in codebases at their strictest settings. It can automatically fix many common issues and supports safe coding patterns used in other languages. It is indexed under Code Quality Tools.","source":"https://psalm.dev/","question":"What is Psalm?","confidence":0.6},{"answer":"Psalm is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://psalm.dev/","question":"Is Psalm free to use?","confidence":0.6},{"answer":"Psalm supports a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://psalm.dev/","question":"What platforms does Psalm support?","confidence":0.6},{"answer":"Yes. Psalm can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://psalm.dev/","question":"Can Psalm be self-hosted?","confidence":0.6},{"answer":"Yes. Psalm is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/vimeo/psalm","question":"Is Psalm open source?","confidence":0.95}]` |
| deployment.options | `{"self_hosted":true}` | `{"self_hosted":true}` |
| description.long | An automatic formatting tool that parses code and reformats it according to opinionated style rules, adjusting wrapping based on line length constraints. | Psalm scans PHP codebases to discover potential problems and includes Psalter, a tool for automatically fixing identified issues with configurable safety measures and PHP version targeting. |
| features.capabilities | `{"autofix":true,"metrics":false,"function":"formatter","ci_gating":true,"deployment":"cli_local","incremental":true,"open_source":"oss","config_model":"config_file","custom_rules":false,"impl_language":"JavaScript","pricing_model":"free","language_scope":"multi_language","editor_integration":true}` | `{"autofix":true,"metrics":true,"function":"static_analyzer","ci_gating":true,"deployment":"cli_local","open_source":"oss","config_model":"config_file","custom_rules":true,"impl_language":"PHP","pricing_model":"free","language_scope":"single_language","editor_integration":true}` |
| integrations.count | 19 | - |
| integrations.list | `[{"name":"VS Code"},{"name":"WebStorm"},{"name":"Vim"},{"name":"Sublime Text"},{"name":"Emacs"},{"name":"Visual Studio"},{"name":"Nova"},{"name":"Neovim"}]` | - |
| language.primary | JavaScript | PHP |
| license.spdx | MIT | MIT |
| market.availability | `{"primaryMarkets":[],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` | - |
| platform.support | `{"cli":true,"web":true}` | `{"cli":true}` |
| pricing | `{"type":"open_source","summary":"Free and open source","freeTier":true,"sourceUrl":"https://prettier.io","retrievedAt":"2026-08-14T13:46:04.335Z"}` | `{"type":"open_source","plans":[{"free":true,"name":"Open Source","description":"Free and open-source static analysis tool for PHP","contactSales":false}],"summary":"Free and open-source. Optional paid support contracts available.","freeTier":true,"sourceUrl":"https://psalm.dev/","retrievedAt":"2026-08-03T22:32:46.041Z"}` |
| pricing.free_tier | yes | yes |
| pricing.model | commercial | commercial |
| pricing.price_level | free | free |
| pricing.transparent | yes | yes |
| release.cadence_days | 5 | 1 |
| release.history | `[{"url":"https://github.com/prettier/prettier/releases/tag/3.9.10","date":"2026-10-10T08:36:47Z","type":"stable","version":"3.9.10"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.9","date":"2026-09-23T06:33:12Z","type":"stable","version":"3.9.9"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.8","date":"2026-09-17T21:55:32Z","type":"stable","version":"3.9.8"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.7","date":"2026-09-16T08:27:53Z","type":"stable","version":"3.9.7"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.6","date":"2026-07-21T05:52:55Z","type":"stable","version":"3.9.6"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.5","date":"2026-07-09T16:22:50Z","type":"stable","version":"3.9.5"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.4","date":"2026-06-30T01:21:45Z","type":"stable","version":"3.9.4"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.3","date":"2026-06-29T11:38:44Z","type":"stable","version":"3.9.3"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.1","date":"2026-06-27T23:06:22Z","type":"stable","version":"3.9.1"},{"url":"https://github.com/prettier/prettier/releases/tag/3.9.0","date":"2026-06-27T10:28:04Z","type":"stable","version":"3.9.0"},{"url":"https://github.com/prettier/prettier/releases/tag/3.8.5","date":"2026-06-26T13:00:46Z","type":"stable","version":"3.8.5"},{"url":"https://github.com/prettier/prettier/releases/tag/3.8.4","date":"2026-06-09T11:31:30Z","type":"stable","version":"3.8.4"},{"url":"https://github.com/prettier/prettier/releases/tag/3.8.3","date":"2026-04-15T01:00:35Z","type":"stable","version":"3.8.3"},{"url":"https://github.com/prettier/prettier/releases/tag/3.8.2","date":"2026-04-10T02:44:52Z","type":"stable","version":"3.8.2"},{"url":"https://github.com/prettier/prettier/releases/tag/3.8.1","date":"2026-01-21T17:50:23Z","type":"stable","version":"3.8.1"},{"url":"https://github.com/prettier/prettier/releases/tag/3.8.0","date":"2026-01-14T23:56:57Z","type":"stable","version":"3.8.0"},{"url":"https://github.com/prettier/prettier/releases/tag/3.7.4","date":"2025-12-03T04:37:09Z","type":"stable","version":"3.7.4"},{"url":"https://github.com/prettier/prettier/releases/tag/3.7.3","date":"2025-11-29T17:55:30Z","type":"stable","version":"3.7.3"},{"url":"https://github.com/prettier/prettier/releases/tag/3.7.2","date":"2025-11-28T20:58:56Z","type":"stable","version":"3.7.2"},{"url":"https://github.com/prettier/prettier/releases/tag/3.7.1","date":"2025-11-27T11:32:54Z","type":"stable","version":"3.7.1"}]` | `[{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-rc2","date":"2026-10-09T16:00:46Z","type":"prerelease","version":"7.0.0-rc2"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.20.0","date":"2026-10-09T16:01:25Z","type":"stable","version":"6.20.0"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.19.2","date":"2026-10-07T13:43:48Z","type":"stable","version":"6.19.2"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-rc1","date":"2026-10-05T12:46:32Z","type":"prerelease","version":"7.0.0-rc1"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta24","date":"2026-10-02T13:17:13Z","type":"prerelease","version":"7.0.0-beta24"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta23","date":"2026-10-01T09:39:24Z","type":"prerelease","version":"7.0.0-beta23"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.19.1","date":"2026-09-29T11:11:40Z","type":"stable","version":"6.19.1"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.19.0","date":"2026-09-28T14:00:35Z","type":"stable","version":"6.19.0"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.18.1","date":"2026-09-25T20:34:43Z","type":"stable","version":"6.18.1"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta22","date":"2026-09-21T11:24:43Z","type":"prerelease","version":"7.0.0-beta22"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.18.0","date":"2026-09-21T11:04:09Z","type":"stable","version":"6.18.0"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta21","date":"2026-09-15T12:56:42Z","type":"prerelease","version":"7.0.0-beta21"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.17.2","date":"2026-09-15T12:43:38Z","type":"stable","version":"6.17.2"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta20","date":"2026-09-14T10:19:25Z","type":"prerelease","version":"7.0.0-beta20"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.17.1","date":"2026-09-12T13:52:03Z","type":"stable","version":"6.17.1"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.17.0","date":"2026-09-10T12:43:54Z","type":"stable","version":"6.17.0"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta19","date":"2026-04-15T20:51:53Z","type":"prerelease","version":"7.0.0-beta19"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta18","date":"2026-04-15T18:57:09Z","type":"prerelease","version":"7.0.0-beta18"},{"url":"https://github.com/vimeo/psalm/releases/tag/6.16.1","date":"2026-03-19T11:07:58Z","type":"stable","version":"6.16.1"},{"url":"https://github.com/vimeo/psalm/releases/tag/7.0.0-beta17","date":"2026-03-17T11:28:08Z","type":"prerelease","version":"7.0.0-beta17"}]` |
| security.scorecard | 6 | 4.7 |
| security.vulnerabilities | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=prettier&per_page=100","last_12m":0,"max_severity":null}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=packagist&package_name=vimeo%2Fpsalm&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (Code Quality Tools)

| Capability | Prettier | Psalm |
|---|:--:|:--:|
| **Core** |  |  |
| Function | Formatter | Static analyzer |
| Language scope | Multi-language | Single-language |
| Implementation language | JavaScript | PHP |
| **Capability** |  |  |
| Autofix | ✓ | ✓ |
| **Config** |  |  |
| Config model | Config file | Config file |
| **Extensibility** |  |  |
| Custom rules | ✗ | ✓ |
| **Deployment** |  |  |
| Deployment | CLI-local | CLI-local |
| **Delivery** |  |  |
| Editor integration | ✓ | ✓ |
| CI / VCS gating | ✓ | ✓ |
| **Insight** |  |  |
| Code metrics | ✗ | ✓ |
| **Performance** |  |  |
| Incremental / monorepo aware | ✓ | - |
| **Licensing** |  |  |
| Open-source | OSS | OSS |
| **Commercial** |  |  |
| Pricing model | Free | Free |

*Source: vioscaleAI. Generated 2026-10-16T20:07:51.560Z. "-" = undocumented, not absent.*
