nette / code-checker
✅ Nette CodeChecker: A simple tool to check source code against a set of Nette coding standards.
Requires
- php: >= 8.0
- latte/latte: ^3.0.7
- nette/application: ^3.1
- nette/assets: ^1.0
- nette/caching: ^3.1
- nette/command-line: ^1.9.2
- nette/forms: ^3.0
- nette/neon: ^3.0
- nette/utils: ^4.0
Requires (Dev)
- nette/phpstan-rules: ^1.0
- nette/tester: ^2.0
- phpstan/extension-installer: ^1.4
- phpstan/phpstan: ^2.2
- tracy/tracy: ^2.6
This package is auto-updated.
Last update: 2026-06-06 14:31:11 UTC
README
Introduction
Code Checker is a command-line tool that scans your source code for common formal errors – and can fix many of them automatically. It works with PHP, Latte, NEON, JSON and YAML files, checking encoding, line endings, indentation, trailing whitespace and more.
It runs as a standalone application, not as a project dependency.
Documentation can be found on the website. If you like it, please make a donation now. Thank you!
Installation
Install it globally via Composer:
composer global require nette/code-checker
Make sure your global Composer bin directory is in your PATH.
The code-checker command is then available from anywhere, on any operating system.
Alternatively, install it as a standalone project:
composer create-project nette/code-checker
It requires PHP 8.0 or higher.
Usage
By default, Code Checker runs in read-only mode and only reports the problems it finds:
code-checker
To actually repair the files, add --fix. Back up your files first, or run it on a clean working tree so you can review the changes afterwards with git diff:
code-checker --fix
You can limit the scan to a specific path, skip files, or run faster syntax-only checks:
code-checker -d src --ignore "temp/*"
code-checker --only-syntax
In read-only mode the tool exits with code 0 when everything is fine and 1 when any problem is found, so it fits nicely into CI pipelines.
Full list of options:
Usage: code-checker [options]
Options:
-d <path> Folder or file to scan (default: current directory)
-i | --ignore <mask> Files to ignore
-f | --fix Fix the files
-l | --eol Normalize line endings to the system default
--only-syntax Check syntax only (faster)
--no-progress Do not show progress dots
--version Show version
What Code Checker Does
- checks the syntax of PHP, Latte, NEON and JSON files
- removes the BOM
- verifies that files are valid UTF-8
- checks for control characters
- detects malformed phpDoc comments around annotations (e.g.
/* @varinstead of/** @var) - checks that PHP files declare
strict_types=1 - enforces tabs for indentation in PHP, CSS, JS and TS files, and spaces in YAML
- removes trailing whitespace and blank lines at the end of files
- normalizes line endings to the system default (with the
-lparameter)