Every big project has its own coding standards for syntax and formatting (Coding Guidelines / CGL). For example Zend Framework, PEAR, Drupal, Symfony2 and so on. TYPO3 CMS and TYPO3 Flow / Neos as well.
With the PHP_CodeSniffer it is possible to detect violations from a defined set of rules (called sniffs) for PHP, JavaScript and CSS files.
This repository contains self developed sniffs based on the PHP_CodeSniffer for the TYPO3 Project to check for the coding guidelines and detect violation. We call this repository the TYPO3 Sniff Pool, because it contains all sniffs we use in the separate coding standards like TYPO3Flow and TYPO3CMS.
Since this standard is a dependency of TYPO3CMS and TYPO3Flow standard, you don't need to install this standard directly. It will automatically installed when you install one of the mentioned standards.
Since it is an own standard it is possible to call it.
This is not recommended! It will raise weird errors.
We provide and suggest to use the separate standards who match the coding guidelines of TYPO3CMS and TYPO3Flow.
We collect the complete documentation of
- this repository
- the self developed sniffs
- how to install our custom standards
- how to contribute to this repository
- where you can find further information
in our wiki.
Contribution is already welcome!
During the development of the PHP_CodeSniffer rules many people take hands on and contributed to this project. Here is a list of all people who were involved in the development. If you are not listed here, but you had contributed something, don`t be angry. We are just humans ;)
- Laura Thewalt (Code / Documentation)
- Julian Kleinhans (Code)
- Bastian Waidelich (Documentation)
- Christian Trabold (CI-Integration/ Documentation)
- Tim Eilers (Code / Documentation)
- and many more can be found at our contributors page
Thank you! You are awesome!
If you want to contribute now, we have collected a bunch of information how to contribute to this project in our wiki. There you can find information about the used branching model, how to execute unit tests or about TravisCI.