0.1.16 • Published 12 months ago
eslint-plugin-fsd-import-linter v0.1.16
eslint-plugin-fsd-import-linter
Eslint plugin which checks whether modules are imported according to feature sliced design (FSD) architecture
Installation
You'll first need to install ESLint:
npm i eslint --save-dev
Next, install eslint-plugin-fsd-import-linter
:
npm install eslint-plugin-fsd-import-linter --save-dev
Usage
Add fsd-import-linter
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
{
"plugins": ["fsd-import-linter"]
}
Then configure the rules you want to use under the rules section.
- Set "alias" to empty "" if you don't user alias for imports.
- "public-api-imports" rule also checks testing.ts public api for test files for imports some mock data
- "ignoreImportPatterns" is used to ignore layer import rules. Includes files in which you want to import overlying files in underlying files for testing purposes.
{
"rules": {
"fsd-import-linter/path-checker-fsd": ["error", { "alias": "@" }],
"fsd-import-linter/public-api-imports": [
"error",
{
"alias": "@",
"testFilesPatterns": [
"**/*.test.*",
"**/*.stories.*",
"**/StoreDecorator.tsx"
]
}
],
"fsd-import-linter/fsd-layer-imports": [
"error",
{
"alias": "@",
"ignoreImportPatterns": ["**/StoreProvider", "**/testing"]
}
]
}
}
Rules
Name | Description |
---|---|
fsd-layer-imports | Underlying layer modules should not use overlying layer modules. There is ignore options for some files such as StoreProvider or testing files |
path-checker-fsd | Withing a slice all paths should be relative |
public-api-imports | The plugin should not allow to import module directly from file. Modules can be imported only from public api |
0.1.11
12 months ago
0.0.10
12 months ago
0.1.12
12 months ago
0.1.13
12 months ago
0.1.14
12 months ago
0.1.15
12 months ago
0.1.0
12 months ago
0.1.1
12 months ago
0.1.16
12 months ago
0.0.9
12 months ago
0.0.8
12 months ago
0.0.7
12 months ago
0.0.6
1 year ago
0.0.5
1 year ago
0.0.4
1 year ago
0.0.3
1 year ago
0.0.2
1 year ago
0.0.1
1 year ago
0.0.0
1 year ago