Adds an ESLint rule to enforce filename conventions for linted files. Allows different options for different file extensions. Supports custom regular expressions.
$ npm install -D eslint-plugin-filename
The following built-in values are supported: pascalcase
/PascalCase
, camelcase
/camelCase
, snakecase
/snake_case
, kebabcase
/kebab-case
.
Multiple built-in values passed as array are also supported.
Add it to your .eslintrc.js
:
module.exports = {
plugins: [
'filename',
],
rules: {
'filename/match': [2, 'camelcase'],
},
};
or
module.exports = {
plugins: [
'filename',
],
rules: {
'filename/match': [2, ['camelcase','pascalcase']],
},
};
You can also provide your own regex, if you are using your own regex, do not pass them as array.
'filename/match': [2, /^([a-z]+-)*[a-z]+(?:\..*)?$/],
You can also specify different options for different file extensions. In this case the plugin will only check files with extensions you explicitly provided:
'filename/match': [2, { '.js': 'camelCase', '.ts': /^([a-z]+-)*[a-z]+(?:\..*)?$/ }],
MIT