# Checking non-PHP files Psalm supports the ability to check various PHPish files by extending the `FileChecker` class. For example, if you have a template where the variables are set elsewhere, Psalm can scrape those variables and check the template with those variables pre-populated. An example TemplateChecker is provided [here](https://github.com/vimeo/psalm/blob/master/examples/TemplateChecker.php). ## Using `psalm.xml` To ensure your custom `FileChecker` is used, you must update the Psalm `fileExtensions` config in psalm.xml: ```xml ``` ## Using custom plugin Plugins can register their own custom scanner and analyzer implementations for particular file extensions. ```php addFileTypeScanner('phpt', TemplateScanner::class); $fileExtensions->addFileTypeAnalyzer('phpt', TemplateAnalyzer::class); } } ```