eslint-plugin-check-file

An ESLint plugin that enforces consistent naming conventions for files and folders in your project. It helps maintain a clean and organized codebase by allowing you to define and enforce specific patterns for filenames and directory structures.
Installation
You'll first need to install ESLint:
npm i eslint --save-dev
Next, install
eslint-plugin-check-file
:
npm install eslint-plugin-check-file --save-dev
Usage
This plugin supports ESLint's flat configuration. Here's a complete example:
import checkFile from 'eslint-plugin-check-file';
export default [
{
files: ['**/*.yaml', '**/*.webp'],
processor: 'check-file/eslint-processor-check-file',
},
{
files: ['src/**/*.*'],
plugins: {
'check-file': checkFile,
},
rules: {
'check-file/no-index': 'error',
'check-file/filename-blocklist': [
'error',
{
'**/*.model.ts': '*.models.ts',
'**/*.util.ts': '*.utils.ts',
},
],
'check-file/folder-match-with-fex': [
'error',
{
'*.test.{js,jsx,ts,tsx}': '**/__tests__/',
'*.styled.{jsx,tsx}': '**/components/',
},
],
'check-file/filename-naming-convention': [
'error',
{
'**/*.{jsx,tsx}': 'PASCAL_CASE',
'**/*.{js,ts}': 'CAMEL_CASE',
},
],
'check-file/folder-naming-convention': [
'error',
{
'src/components/*/': 'PASCAL_CASE',
'src/!(components)/**/!(__tests__)/': 'CAMEL_CASE',
},
],
},
},
];
Supported Rules
Version Compatibility
Version 3.x and above only support ESLint's flat configuration. For legacy configuration support, please use version 2.x.
Support
If you find this plugin helpful, consider supporting the project:

