PHPackages                             vkcom/noverify - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. vkcom/noverify

ActiveLibrary

vkcom/noverify
==============

Pretty fast linter (code static analysis utility) for PHP

v0.5.5(1y ago)68562.7k↓31.4%59[67 issues](https://github.com/VKCOM/noverify/issues)[8 PRs](https://github.com/VKCOM/noverify/pulls)3MITGoPHP &gt;=7.1CI passing

Since Aug 30Pushed 3mo ago22 watchersCompare

[ Source](https://github.com/VKCOM/noverify)[ Packagist](https://packagist.org/packages/vkcom/noverify)[ Docs](https://github.com/VKCOM/noverify)[ RSS](/packages/vkcom-noverify/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)DependenciesVersions (23)Used By (3)

[![](docs/noverify_small.png)](docs/noverify_small.png)

[![Build Status](https://github.com/VKCOM/noverify/workflows/Go/badge.svg)](https://github.com/VKCOM/noverify/workflows/Go/badge.svg) [![Go Report Card](https://camo.githubusercontent.com/4583266be4aab05a273dbe752282228a125c630811aac7930e12e040aca0741d/68747470733a2f2f676f7265706f7274636172642e636f6d2f62616467652f6769746875622e636f6d2f564b434f4d2f6e6f766572696679)](https://goreportcard.com/report/github.com/vkcom/noverify) [![GitHub license](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](/LICENSE) [![Telegram chat](https://camo.githubusercontent.com/c98576a735a628383004259c129c6008073e3e367876116fb48e5abfd88790df/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636861742d6a6f696e2d627269676874677265656e3f6c6f676f3d74656c656772616d)](https://t.me/noverify_linter)

NoVerify
--------

[](#noverify)

NoVerify is a PHP linter: it finds possible bugs and style violations in your code.

- NoVerify has no config: any reported issue in your PHPDoc or PHP code must be fixed.
- NoVerify aims to understand PHP code at least as well as PHPStorm does. If it behaves incorrectly or sub optimally, please [report issue](https://github.com/VKCOM/noverify/issues/new).
- This tool is written in [Go](https://golang.org/) and uses fork of [z7zmey/php-parser](https://github.com/VKCOM/php-parser).

Features
--------

[](#features)

1. Fast: analyze ~100k LOC/s (lines of code per second) on Core i7;
2. Incremental: can analyze changes in git and show only new reports. Indexing speed is ~1M LOC/s;
3. Auto fixes for some warnings;
4. PHP 7 and PHP 8 support;
5. Diff and baseline modes support.

Default lints
-------------

[](#default-lints)

NoVerify by default has the following checks:

- Unreachable code
- Too few arguments when calling a function/method
- Call to undefined function/method
- Fetching of undefined constant/class property
- Class not found
- PHPDoc is incorrect
- Undefined variable
- Variable not always defined
- Case without `break;`
- Syntax error
- Unused variable
- Incorrect access to private/protected elements
- Incorrect implementation of `IteratorAggregate` interface
- Incorrect array definition, e.g. duplicate keys
- And others, you can see the entire list [here](/docs/checkers_doc.md)

Playground
----------

[](#playground)

Try NoVerify now in [Playground](https://vkcom.github.io/noverify/playground/) (not supported Safari yet).

Plugins
-------

[](#plugins)

- [Using NoVerify in PhpStorm](docs/phpstorm-plugin.md)

User Guide
----------

[](#user-guide)

- [How to install NoVerify](docs/install.md)

Using NoVerify as linter:

- [Using NoVerify as linter / static analyser](docs/getting_started.md)

Extending NoVerify:

- [Writing own rules quickly with PHP](docs/dynamic_rules.md)
- [Writing new checks in Go](docs/writing-checks-in-go.md)

Using NoVerify as PHP [language server](https://langserver.org) (version **0.3.0** and bellow):

- [Using NoVerify as language server for VSCode](docs/vscode-plugin.md)
- [Using NoVerify as language server for Sublime Text](docs/sublime-plugin.md)
- [Writing new IDE/editor plugin](docs/writing-new-ide-plugin.md)

Contributing
------------

[](#contributing)

Feel free to contribute to this project. See [CONTRIBUTING.md](https://github.com/VKCOM/noverify/blob/master/CONTRIBUTING.md) for more information. Join [our chat ru](https://t.me/noverify_linter) in a telegram if you want to discuss something.

The License
-----------

[](#the-license)

NoVerify is distributed under the MIT License, on behalf of VK LLC.

###  Health Score

50

—

FairBetter than 96% of packages

Maintenance62

Regular maintenance activity

Popularity52

Moderate usage in the ecosystem

Community36

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 55.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~266 days

Recently: every ~331 days

Total

6

Last Release

391d ago

PHP version history (2 changes)v0.5.0PHP &gt;=7.0

v0.5.3PHP &gt;=7.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/240434d174eb40dd828dc69bf885b12f9effff2c95b3da629cdb2bfd10846ad9?d=identicon)[vk\_com](/maintainers/vk_com)

---

Top Contributors

[![quasilyte](https://avatars.githubusercontent.com/u/6286655?v=4)](https://github.com/quasilyte "quasilyte (540 commits)")[![i582](https://avatars.githubusercontent.com/u/51853996?v=4)](https://github.com/i582 "i582 (308 commits)")[![YuriyNasretdinov](https://avatars.githubusercontent.com/u/575929?v=4)](https://github.com/YuriyNasretdinov "YuriyNasretdinov (32 commits)")[![Hidanio](https://avatars.githubusercontent.com/u/36065987?v=4)](https://github.com/Hidanio "Hidanio (26 commits)")[![abbit](https://avatars.githubusercontent.com/u/23701396?v=4)](https://github.com/abbit "abbit (14 commits)")[![Danil42Russia](https://avatars.githubusercontent.com/u/6605618?v=4)](https://github.com/Danil42Russia "Danil42Russia (11 commits)")[![edgardmessias](https://avatars.githubusercontent.com/u/1530997?v=4)](https://github.com/edgardmessias "edgardmessias (5 commits)")[![tonygoold](https://avatars.githubusercontent.com/u/4601698?v=4)](https://github.com/tonygoold "tonygoold (4 commits)")[![ludweeg](https://avatars.githubusercontent.com/u/31108067?v=4)](https://github.com/ludweeg "ludweeg (4 commits)")[![whisk](https://avatars.githubusercontent.com/u/437742?v=4)](https://github.com/whisk "whisk (4 commits)")[![ngkoshkin](https://avatars.githubusercontent.com/u/938906?v=4)](https://github.com/ngkoshkin "ngkoshkin (2 commits)")[![proggga](https://avatars.githubusercontent.com/u/12262156?v=4)](https://github.com/proggga "proggga (2 commits)")[![bvwells](https://avatars.githubusercontent.com/u/22873967?v=4)](https://github.com/bvwells "bvwells (2 commits)")[![sergey-shambir](https://avatars.githubusercontent.com/u/1856842?v=4)](https://github.com/sergey-shambir "sergey-shambir (2 commits)")[![setpill](https://avatars.githubusercontent.com/u/37372069?v=4)](https://github.com/setpill "setpill (1 commits)")[![sosiska](https://avatars.githubusercontent.com/u/969838?v=4)](https://github.com/sosiska "sosiska (1 commits)")[![tamaravedenina](https://avatars.githubusercontent.com/u/36485070?v=4)](https://github.com/tamaravedenina "tamaravedenina (1 commits)")[![u5surf](https://avatars.githubusercontent.com/u/14180225?v=4)](https://github.com/u5surf "u5surf (1 commits)")[![vajexal](https://avatars.githubusercontent.com/u/72415539?v=4)](https://github.com/vajexal "vajexal (1 commits)")[![blascsi](https://avatars.githubusercontent.com/u/5846127?v=4)](https://github.com/blascsi "blascsi (1 commits)")

---

Tags

gogolanglinternoverifyphp

### Embed Badge

![Health badge](/badges/vkcom-noverify/health.svg)

```
[![Health](https://phpackages.com/badges/vkcom-noverify/health.svg)](https://phpackages.com/packages/vkcom-noverify)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
